데이터 크기 질문
298
1 asked
강의 15분 쯤 내용에서 질문 있습니다.
변수 a의 주소에서 1바이트 더한 위치에 b의 주소가 있을거라고 하시면서 a 주소에다가 1을 더하셨는데, 1만 저하면 1bit가 더해진 거 아닌가요? 1바이트를 더하는건데 왜 1만 더하는건지 이해가 안됩니다 ㅠㅠ
Answer 2
0
옛날에 학부 때 그 부분이 저도 좀 헷갈렸는데요
요약하자면 논리적인 주소의 값은 1증가 한 게 맞으나 실제 물리적인 메모리의 공간은 1바이트가 증가한 거여서 1바이트를 더했다고 표현하는 겁니다
좀 더 구체적으로는
일단 대부분의 컴퓨터 시스템이
"바이트 주소 지정" 방식을 사용합니다
쉽게 말해서 컴퓨터 메모리에 있는 모든 1바이트 공간마다 고유한 주소 번호를 하나씩 붙여 놓는 건데요
메모리를 아주 긴 아파트 복도라고 상상했을 때
각각의 방(메모리 공간)은 1바이트 크기를 가집니당
그리고 각 방마다 0x01, 0x02, 0x03...
같은 식으로 주소 번호가 붙어 있고요
따라서 주소 값이 1증가 했다는 것은
바로 옆방으로 한 칸 이동했다는 뜻이고,
이는 메모리 상에서 물리적인 공간을 1바이트 만큼 이동했다는 뜻 입니다
+
본 주제와는 무관하지만 같이 알아두면 좋은 개념이어서 추가로 적자면
논리적인 메모리 주소를 담는 공간은
64비트 시스템 기준에서는 8바이트 입니다
이것은 나중에 "포인터의 크기" 개념에서 다루는 내용입니다
visualstudio에서 파일분할관리실습시 설정 문의를 드립니다.
0
544
1
정렬함수 좀 더 확실하게 이해 할 방법이 있을까요?
0
444
1
strcpy() 구현 관련 질문
0
516
1
빌드(망치)를 누르니 이런 오류가 떴습니다. 어떻게 해야 하나요?
0
458
1
클래스 타입의 포인터 질문합니다
0
549
1
입력값을 enum 값에 넣어주는거 이제 막혔나요?
0
500
1
템플릿 특수화 관련 질문
0
387
1
포인터 관련 질문합니다!
0
267
1
Unable to start assembler. Check your settings.
0
837
2
cpu선택
0
543
1
포인터 질문이 있습니다
0
326
1
20:35 에서 구조체 크기에 대한 질문입니다!
0
588
1
iterator 삭제관련
0
409
1
함수 호출을 디스어셈블러로 분석하다가 궁금점이 생겼습니다!
0
313
1
15 분 45초 대 질문
0
312
0
스택 프레임 질문합니다!
2
308
1
오른값 참조 in 게임
0
387
0
동적할당 질문이 있습니다
0
452
1
안녕하세요 메모리에 대해 질문드립니다.
0
308
1
함수객체 의 매개변수
0
363
1
복사생성자
0
438
1
main이나 endl 부분이 주황색으로 표시된건 어떻게 하나요
0
424
1
포인터 실습 강의를 보고 궁금한게 있습니다.
0
358
1
스택 오버플로우
2
793
1

