프로그래밍/C++

#5. 문자와 엔디안

코딩하는상후니 2022. 7. 15. 22:01

 
*컴퓨터가 데이터를 저장하고 있는 상태
=> 비트단위로 저장되어있음.
=> 결국 0x11,  17,  00010001b 표기만 다를 뿐 저장되는 내용은 같다.

 


 
*아스키코드
*컴퓨터는 H, E, l, ... 이런 문자들을 알 수 없다.

*문자열 끝에는 항상 NULL (0x00) 이 포함되어 있어야함..
=> 해당 문자열이 언제 끝나는지 알려주어야 됨.

*리틀엔디안  &  빅엔디안

 

=> intel 에서는 '리틀 엔디안' 적용.
=> 항상 낮은 주소부터 Big / Little 기준으로 넣어진다.
 
*왜 '리틀엔디안' 을 사용했을까 ??
=> 장단점이 교차한다.

 

*리틀엔디안
=> 캐스팅에 유리 ( ex. 4바이트 데이터에서 1바이트만 가져오고 싶을 때 )
 
*빅엔디안
=> 숫자 비교에 유리 ( ex. 0x1234  /  0x5678  )
 
메모리의 최소단위 '1바이트'
메모리 주소 는 '1' 씩 증가.
 
=> 참고로 VS 메모리 창에서는,
오른쪽부터 주소값이 증가되는 형태이다. 아무래도 보기 편하게 VS 에서 만들어준게 아닌가 싶다.
c = 1234 = 0x4d2,  오른쪽부터 4d2 가 넣어지는 것을 볼 수 있다.
 

본 내용은 인프런의 루키스님 강의를 듣고 정리한 내용입니다.

'프로그래밍 > C++' 카테고리의 다른 글

#7. 시프트, 논리 연산  (0) 2022.07.15
#6. 사칙연산  (0) 2022.07.15
#4. 변수와 레지스터  (0) 2022.07.15
#3. 레지스터  (0) 2022.07.14
#2. 데이터 기초  (0) 2022.07.14