목록C (6)
컴공생의 다이어리
2-layer channel coding Encoder(인코더) Code - Encoder의 입력은 16bit, 출력은 42bit의 codeword // 2-layer Channel Coding Encoder #include #include int main() { char input[17] = { 0 }; int input_shift[24] = { 0, }; int g[9] = { 1,0,0,0,0,0,1,1,1 }; char temp[25] = { 0 }; printf("--------- 2-layer Channel Coding Encoder ---------\n"); printf("Input: "); scanf("%s",input); ///////////////////// crc-8 encoder /..
CRC(cyclic redundancy check)란? CRC는 네트워크 등을 통하여 데이터를 전송할 때 전송된 데이터에 오류가 있는지를 확인하기 위한 체크값을 결정하는 방식을 말한다. 우리 말로는 순환 중복 검사라고 한다. 데이터를 전송하기 전에 주어진 데이터의 값에 따라 CRC 값을 계산하여 데이터에 붙여 전송하고, 데이터 전송이 끝난 후 받은 데이터의 값으로 다시 CRC 값을 계산하게 된다. 이어서 두 값을 비교하고, 이 두 값이 다르면 데이터 전송 과정에서 잡음 등에 의해 오류가 덧붙여 전송된 것 임을 알 수 있다. CRC Encoder(인코더) Code - Encoder의 입력은 16bit, 출력은 24bit - divisior G = X8 + X2 + X + 1 // CRC-8 Encoder ..
Ubuntu에서 c와 c++ Makefile 만들기 test1.c와 test2.cpp가 아래와 같이 있다고 가정한다! //test1.c #include int main(){ printf("test1 HELLO~!\n"); return 0; } //test2.cpp #include using namespace std; int main(){ cout
연산자 우선순위(Operator Priority) result = 5 + 2 * 8 / 4 - 8; 수학에서 위의 result 값을 구하기 위해서는 곱셈과 나눈셈의 연산이 덧셈과 뺄셈보다 먼저 계산되어야 한다. c/c++에서도 곱셈과 나눈셈의 연산이 덧셈과 뺄셈보다 먼저 처리 된다. c/c++에서는 사칙 연산 말고도 많은 연산자가 있기 때문에 여러 개의 연산자가 일렬로 나열되어 있을 때, 어떤 연산자를 먼저 처리할지의 순서가 정해져 있는데 이것을 연산자 우선순위라고 한다. result를 구하기 위해서 가장 우선순위가 높은 연산자는 곱셈 연산자(*)와 나눗셈 연산자(/)이고 그 다음으로 우선순위가 높은 연산자는 덧셈 연산자(+)와 뺄셈 연산자(-)이며 이 중에서 가장 우선순위가 낮은 연산자는 대입 연산자(..
아스키코드(ASCII Code) 표 이 아스키코드 표에서 자주 사용되는 아스키코드는 A~Z(65~90), a~z(97~122), 0~9(48~57), NULL(0), 공백(space)(32)이 많이 사용된다.
정수형 데이터 입력 #include int main(){ int a; scanf("%d",&a);#입력 받는 부분 printf("%d",a); return 0; } 실수형 데이터 입력 #include int main(){ double a; scanf("%lf",&a);#입력 받는 부분 printf("%lf",a); printf("%.2lf",a);#소수점 둘째 자리(셋째 자리에서 반올림)까지 출력 return 0; } 문자형 데이터 입력 #include int main(){ char a; scanf("%c",&a);#입력 받는 부분 printf("%c",a); return 0; } 아래 코드는 문자를 입력받고 %c로 출력하면 입력한 문자가, %d로 출력하면 아스키코드 값이 출력된다. #include in..