Ch1.1 Information Is Bits + Context

Park Choong Ho·2021년 8월 9일
0

1.1 Information Is Bits + Context

hello 프로그램은 프로그래머가 에디터로 생성하고 hello.c라 불리는 텍스트 파일로 저장함으로써 소스 프로그램으로서의 여정을 시작합니다. 소스 프로그램은 연속된 0, 1 비트의 집합이며 8-bit 단위 청크인 바이트로 구성되어 있습니다.각 바이트들은 프로그램의 텍스트 문자를 가리킵니다.

대부분 컴퓨터 시스템들은 ASCII 기준을 활용해 텍스트 문자를 표현합니다. ASCII는 각 문자를 유일한 바이트 크기의 정수 값으로 표현합니다.

hello.c 프로그램은 연속된 바이트 형태 파일로 저장되어 있습니다. 각 바이트는 해당 문자와 일치하는 정수 값을 가집니다. 예를 들어, 첫번째 바이트는 정수 값 35를 가집니다. 이는 문자 #에 상응합니다. 두번째 바이트는 정수 값 105와 일치하는데 i에 상응합니다. 각 줄이 보이지 않는 newline 문자인 \n로 종료된다는 것을 기억합시다. 이 문자는 정수 값 10을 가집니다. hello.c 같이 완전히 ASCII 문자들로만 구성된 파일들은 text file이라고 합니다. 이외의 파일들은 모두 binary file입니다.

hello.c는 가장 기초적인 개념을 보여줍니다. 그것은 모든 시스템상에서의 정보들(디스크 파일, 메모리 상에 올라가 있는 파일, 메모리에 저장된 유저 데이터, 네트워크상의 데이터 등등) 모두 비트의 집합으로 표현된다는 것입니다. 다른 데이터 오브젝트들을 구별해주는 유일한 것은 우리가 데이터를 볼때의 context입니다. 예를 들어, 다른 context상에서는 같은 연속된 바이트라도 정수, 실수, 문자열, 기계 인스트럭션 등 다른 것을 표현할 수 있습니다.

프로 그래머로써 우리는 숫자의 기계적 표현을 이해할 필요가 있습니다. 왜냐하면 그들은 정수 및 실수와 똑같지 않기 때문입니다. 그들은 예측할 수 없는 방식으로 동작하는 유한한 근사값입니다. 이 개념은 2장에서 살펴보도록 하겠습니다.

profile
백엔드 개발자 디디라고합니다.

0개의 댓글