프로그래밍 언어21 LSB/MSB , MSB First/LSB First, 리틀 엔디안 / 빅 엔디안 ※ 해당 글은 개인 공부 기록을 남겨놓는 것이 목적임으로 오류가 발생할 수 있습니다. 오류 또는 업데이트된 사항이 있다면 댓글로 알려주시면 감사하겠습니다. LSB / MSBLSB는 Least Significant Bit의 약자로서 하나의 데이터 형에서의 가장 낮은 위치의 Bit를 의미한다.MSB는 Most Significant Bit의 약자로 어떠한 데이터 형의 최상위 비트를 의미한다. 엔디안이란?컴퓨터는 데이터를 메모리에 저장할 때, 바이트 단위로 저장한다.컴퓨터가 저장하는 데이터(시스템 비트)는 32bits(4bytes)나 64bits(8bytes)로 구성한다.따라서 연속되는 바이트를 순서대로 저장해야 하는데, 이것을 바이트 저장 순서(byte order), 엔디안이라고 한다. ※추가 사항MSB.. 2024. 7. 16. while문 사용법 c언어 프로그래밍 책을 보면 while(1.조건식){ 2. 실행문} 실행 순서 1. ①조건식을 평가합니다. 평가 결과가 true이면 ②실행문을 실행합니다. 2. ②실행문이 모두 실행되면 다시 ①조건식으로 되돌아가서 다시 검사합니다. 3. 만약 ①조건식이 true라면 1,2번 순서를 다시 반복하고 아니면 while문을 종료합니다. stm32 소스를 보면 일반적으로 while (조건문); 쓰는 경우를 종종 볼수 있다. while (조건문)는 아래와 같다while (조건문) {} ex)while (!isLightGreen()); // isLightGreen() true를 반환할 때까지 기다린다.while(__HAL_TIM_GET_COUNTER(&htim1) // 10ms or 10us 때까지 기다린다. 2024. 7. 13. 포인터(5) - 다중 포인터(이중포인터 위주) ※ 해당 글은 개인 공부 기록을 남겨놓는 것이 목적임으로 오류가 발생할수 있습니다. 오류 또는 업데이트된 사항이 있다면 댓글로 알려주시면 감사하겠습니다.이중 포인터(더블 포인터)이중 포인터 : 포인터 변수를 가리키는 또 다른 포인터 변수 선언 방법 : 자료형 ** 이중포인터 변수명 예제1#include int main(){ double num = 3.14; double * ptr = # double **dptr = &ptr; double *ptr2; printf("%p %p\n", ptr, *dptr); printf("%f %f\n", num, **dptr); ptr2 = *dptr // ptr2 = ptr; *ptr2 = 10.99.. 2024. 7. 12. 포인터(4) - 함수 포인터 & 사용 예시 정리 해당 글은 개인 공부 정리를 위해 작성되었습니다.함수 포인터프로그램에서 정의된 함수는 프로그램이 실행될 때 모두 메인 메모리에 올라갑니다.배열명이 배열의 시작 주소값를 가리키는 포인터 상수를 의미하듯, 함수명은 함수가 정의되어 있는 메모리의 시작 위치를 가리키는 포인터 상수(constant pointer) 입니다.함수명은 포인터이므로 printf에서 출력해보면 메모리 주소(%p)가 출력된다 ※ 선언 방법 : 반환값자료형 (*함수포인터이름) (매개변수 자료형) #include int add(int a, int b){ return a + b; }int sub(int a, int b){ return a - b; }int mul(int a, int b){ return a * b; }int div(int a, .. 2024. 7. 12. 이전 1 2 3 4 5 6 다음