반응형
BCD 코드는 Binary-coded decimal code라는 뜻이다. 뜻을 보면 알겠지만 BCD는 그냥 BCD이지 BCD 코드라는 말은 쓰지 않는다. 여튼
BCD는 말 그대로 2진수로 표현한 10진수라는 말이다. 11을 2진수로 표기 하려면 1011이라고 표현하는게 일반적인 2진수이지만, 11을 BCD로 표현하면 0001 0001 이다. 이렇게 각 자리의 10진수를 각각 4bit의 2진수로 표현하는게 BCD인 것이다. 8, 4, 2, 1로 이루어진 4bit의 2진수열을 사용하므로 8421코드라도로 불린다.
28192을 BCD로 표현하면?
0010 1000 0001 1001 0010
이 될것이다.
이렇게 10진수를 표현 하는데는 최고다. 아주 옛날 컴퓨터에서 10진수를 편하게 입출력 하기 위해 쓰였다. 이와 비슷하지만 좀 더 발전된 개념으로
Excess-3 코드라는게 있다. 이는 BCD를 보수화 한 것이다.
일단 정의 자체는 BCD코드의 각 자리에 3(0011)을 더한 값이다. 즉 앞서 구한 28192를 Excess-3으로 표현하면
0101 1011 0100 1100 0101
이 된다.
괜히 0011을 더하는 이런 코드를 왜 쓰는 것일까? 신기하게도 이 코드는 bit를 반전시킬 경우 9의 보수값이 나오는 성질이 있다. 즉 1을 반전시키면 9가 나오고 2를 반전시키면 8이 나오고 4를 반전시키면 6이 나온다. 이런 성질 덕분에 컴퓨터 구조적으로 연산하기가 더 쉬워지는 것이다.
반응형
'IT 이론 > 컴퓨터구조' 카테고리의 다른 글
마이크로 오퍼레이션 사이클 타임(Micro operation cycle time) (0) | 2016.10.08 |
---|---|
Instruction Set Architecture : RISC와 CISC (0) | 2015.10.20 |
그레이 코드(Gray code)를 사용하는 이유? (0) | 2015.10.17 |
중앙처리장치(CPU)의 구성과 레지스터 (0) | 2014.05.24 |
[전자계산기구조] 다중처리기 (0) | 2014.05.24 |
댓글