메모리2 논리 주소, 물리 주소 차이와 하드웨어적 메모리 보호 기법 1. 컴파일 단계에서부터 결정되어야 한다 논리 주소(가상 주소라고보 부른다)를 활용하기 위해서는 컴파일러가 미리 소스코드를 "실행 시간 바인딩(run time binding)"이 가능한 코드로 컴파일해야 한다. 궁극적으로 모든 프로그램은 메모리에 적재되어 CPU에 의해 실행되어야 한다. 따라서 어떻게 CPU가 프로그램의 메모리 상의 주소를 참조해 데이터를 긁어올 수 있는지 표준을 정해야 할 것이다. 컴파일러는 메모리 참조 방식(주소 바인딩, address binding)을 근거로 소스코드를 컴파일해야 한다. 다음은 그 종류다. 1-1. 컴파일 타임 바인딩 컴파일 단계에서 구체적인 물리 주소를 결정하는 식이다. 따라서 기계어 명령어에 이미 구체적인 참조 물리 주소가 적히는 식이다. 따라서 프로그램이 적재될.. 2024. 1. 3. 은근히 헷갈리는 비트, 바이트 단위 정리 1비트는 컴퓨터가 표현하는 정보의 이론적인 최소 단위. 정확하게는 어떤 특정한 정보 안에 들어 있는 정보량을 측정하는 단위다. 1바이트는 컴퓨터가 처리하는 정보의 최소 묶음 단위. 물론 비트 하나로 정보를 코딩할 수는 있다... 그러나 우리가 일상에서 컴퓨터로 처리하고 싶은 정보는 복잡한 맥락에 속해 있으므로 하나의 비트만으로는 적절하게 정보를 인코딩할 수 없다. 하나의 비트만으로 표현할 수 있는 정보는 고작 성별(남자 or 여자), 출석 여부(출석함, 안함) 따위에 불과할 것이다. 그렇다고 매번 정보를 표현하기 위해 하나의 비트들을 여러개 모아서 코딩하는 것은 보통 귀찮은 일이 아닐 것이다. 따라서 비트를 세트로 모아 미리 묶어서 처리하는 것이며, 보통 1바이트(8비트)를 한 단위로 묶어 사용하는 것이.. 2023. 12. 26. 이전 1 다음