갑자기 궁금해서 올려봅니다..ㅎㅎ BCH 와 BCD 란 무엇일까요? ---------------------------------
그전에 주의하실점은 같은 철자의 약자를 가진 BCH,BCD가 많다는 것입니다 ^^;
참고로 여기서 설명하는것은 MCU 프로그램을 코딩하실때 사용하시는 코드입니다~!
BCH (binary-coded hexadecimal)
: 4자리의 2진법으로 표현된 16진법입니다!
16진 |
BCH |
10진 |
0 |
0000 |
0 |
1 |
0001 |
1 |
2 |
0010 |
2 |
3 |
0011 |
3 |
즉, BCH로 표현할수있는 숫자는 총 16가지 (2 X 2 X 2 X 2 = 16) 입니다. 0~15까지. 이는 하나의 BCH 숫자는 1개의 바이너리로 표현되기때문입니다. 또한, 이것은 C언어에서 사용하는 int형(signed)과 동일하겠군요..그럼 활용할수있는 방법이 떠오르시죠?..
그리고 AVR (저는 주로 AVR Studio를 사용합니다 ㅎ) 에서는 RAM주소와 같은것을 표현할 때 주로 사용합니다.
ex) 0000H ~ FFFFH 따위로 표현.
그렇지만 실제 코딩에서는 0X00 , 0X01 과 같은 1개의 자리가 16진을 의미하는 16진법형 표현을 가장 많이 사용합니다.
ex) 0x00 = 0000 0000 (2진법) = 0 (10진법) 을 의미합니다.
0x10 = 0001 0000 (2진법) = 16 (10진법) 을 의미합니다.
0x23 = 0010 0011 (2진법) = 35 (10진법) 을 의미합니다.
위의 예제를 보시면 이해가 아마 되실거라 생각됩니다. 나중에는 저 숫자들만 봐도 머릿속에서 자동으로 암산이 되실겁니다..^^:
실제적으로 가장많이 사용하는 형태이기때문에 헷갈리시지 않도록 잘 정리하시길 바랍니다.
BCD (binary-coded decimal) ------------------------------------------------------------------
: 2자리의 2진법으로 표현된 10진법입니다.
10진 |
BCD |
10 |
0001 0000 |
12 |
0001 0010 |
32 |
0011 0010 |
'Nobody tells you about.. > ATmega128(IL)' 카테고리의 다른 글
[AVR_4] ATmega128의 내부구조_2 (1) | 2012.10.23 |
---|---|
[AVR_4] ATmega128의 내부구조 (6) | 2012.03.09 |
[AVR_3] ATmega128의 기본구조 (13) | 2012.03.08 |
[AVR_2] Atmega128 맨땅에 헤딩하기 ㅠ_ㅠ (0) | 2012.03.06 |
[AVR_1] Atmega128 맨땅에 헤딩하기 ㅠ_ㅠ (4) | 2012.03.06 |