오늘의 질문
#04 · 거꾸로 쓰인 숫자
질문
도현: "long x = 0x0102030405060708을 바이트로 찍었더니 08 07 06 05 04 03 02 01이 나왔어요. 메모리가 숫자를 거꾸로 저장하는 거 버그 아니에요?"
오늘 알아낼 것
바이트마다 주소가 붙은 메모리에 여러 바이트짜리 값이 어떤 순서로 놓이는지(리틀 엔디언), BYTE·WORD·DWORD·QWORD PTR 크기, 불러오기와 저장을 실습대로 확인한다. [base + index*scale + disp] 주소 계산으로 gcc가 만든 배열 a[i]와 지역 변수 코드를 읽는다.
새솔대 공학관 5층 실습실 · 화요일 밤 디버거 교실
9월 29일 화요일, 도현이 노트북을 들고 먼저 와 있습니다. 화면에는 C 프로그램 하나가 long 변수의 바이트를 하나씩 찍은 결과가 떠 있습니다. 08, 07, 06 … 01.
"지난주 movabs 바이트도 거꾸로였잖아요. 이건 objdump 버그거나, 제 컴퓨터가 이상한 거예요." 은재가 자기 노트북에서 같은 프로그램을 돌립니다. 똑같이 08부터 나옵니다.
윤 조교가 웃습니다. "버그는 아니고 약속이야. 그 약속이 왜 편한지는 같은 주소를 다른 크기로 읽어 보면 알게 돼. 한 줄씩 보자."
1~3교시는 누구나 볼 수 있고, 4교시부터는 무료 회원이면 끝까지 볼 수 있어요.
로그인하면 어디까지 봤는지 저장되고, '내 강의'에서 이어 볼 수 있어요. 가입비는 없어요.
카카오에서 닉네임만 받아 와요. 개인정보 처리방침
새 교시·새 강의 소식 받기
이 강의에 새 교시가 더해지거나 이어지는 강의가 열리면 이메일로 알려 드려요.
R
ReflexKR
눌러 보며 배우는 파이썬과 Reflex. 모든 예제는 Reflex 0.10.0에서 직접 실행해 확인했습니다.
ReflexKR은 배너 광고 없이 무료로 운영돼요. 도움이 되셨다면 커피 한 잔으로 응원해 주세요.
© 2026 ReflexKR · Since 2026 · CC BY-NC 4.0
질문과 답변
이 교시에서 궁금한 점을 남겨 주세요. 모든 언어 페이지의 질문이 함께 모입니다.