더북(TheBook)

▼ 표 1.3.5 19를 인수로 받은 binary.py의 루프 트레이스

N

n (이진수)

v

v > 0

v (이진수)

n < v

출력

19

10011

16

True

10000

False

1

3

0011

8

True

1000

True

0

3

011

4

True

100

True

0

3

01

2

True

10

False

1

1

1

1

True

1

False

1

0

 

0

False

 

 

 

 

데이터를 한 표기법에서 다른 표기법으로 변경하는 것은 컴퓨터 프로그램을 작성할 때 자주 등장하는 주제이다. 변환에 대해 생각해보면 개념(하루에 들어 있는 시간 수)과 그 개념의 표현(2411000) 간의 차이를 알 수 있다. 여기에서는 복잡한 알고리즘을 이용해 십진수를 이진수로 변환했는데, 정작 컴퓨터 내부에서는 이진법으로 정수를 표현한다는 사실을 생각해보면 얄궂다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.