[컴퓨터네트워크] BCD코드, EBCDIC코드, ASCll코드

[컴퓨터네트워크] BCD코드, EBCDIC코드,Excees-3 코드, ASCll코드


BCD 코드(Binary Coded Decimal)

BCD코드란 2진수는 컴퓨터 같은 디지털 시스템에는 좋지만 그것을 사용하는 사용자(사람)에게는 매우 불편하기 때문에

2진수를 사람들이 편하게 사용할 수 있는 10진수의 형태로 창안한것이 바로 BCD코드
  • 특징을 살펴보면
    • 십진수의 각 자리수에 대응되는 4개의 비트를 사용하여 표현
    • 각 4개의 비트의 범위는 0000 ~ 1001
      • 1010 ~ 1111은 사용되지 않음
2진화 10진 코드라고 부릅니다.
말 그대로 10진수를 이진코드로 표기한 것입니다.
6비트로 한 문자를 표현합니다.
영문 소문자를 표현하지 못합니다.
맨 앞 1비트를 Parity Bit로 추가하여 7비트로 사용
Parity Bit(1) + Zone Bits(2) + Digit Bits(4)로 구성
Digit Bits는 각 비트가 8, 4, 2, 1의 값을 의미합니다.
8421 코드라고도 부릅니다.


EBCDIC 코드(Extended BCD Interchange Code)

BCD코드를 확장한 코드입니다.
확장 2진화 10진 코드라 부릅니다.
8비트로 256가지 문자를 표현할 수 있습니다.
맨 앞의 1비트를 Parity Bit로 추가하여 9비트로 사용
Parity Bit(1) + Zone Bits(4) + Digit Bits(4)로 구성



Excess-3 코드

BCD코드에 3을 더하는 코드입니다.
모든 비트가 동시에 0일 때가 없습니다.
6진수로 BCD 코드를 표현한 후에 3을 더한 것이 Excess-3코드입니다.
자기 보수 코드입니다.


자기 보수 코드

1->0, 0->1로 바꾸었을 때 10진수의 9의 보수를 얻을 수 있는 코드를 말합니다.
10진수에서 9의 보수는 자신과 더해서 9 혹은 99, 999, ... 가 나오는 수를 말합니다.
  • 예) 10진수 6의 9의 보수는 3
  • BCD로 0110
  • Excess-3으로 1001
  • 1001을 1진 보수를 취하면 0110
  • Excess-3의 0110을 BCD로 바꾸면 0011 -> 10진수 3
  • 따라서 Excess-3은 자기 보수 코드입니다.


Gray 코드

BCD코드의 인접한 비트를 XOR 연산하는 코드입니다.
첫번째 비트는 BCD 코드값을 그대로 표현합니다.
코드 변환이 쉽습니다(인접한 코드가 한 비트만 다름)
주변장치에서 숫자를 표현할 때 주로 사용합니다.
1비트만 변환하여 다음 수를 만들 수 있어 H/W 오류가 적습니다.
  • 예) 10진수 8
  • BCD로 1000
  • Gray 코드로 1100
  • 예) 10진수 5
  • BCD로 0101
  • Gray 코드로 1111


ASCll 코드(American Standard Code for Information Interchange)

7비트로 128개의 문자를 표현할 수 있습니다.
맨 앞의 1비트를 Parity Bit로 추가하여 8비트로 사용합니다.
영문 알파멧, 숫자, 기호, 제어문자 등을 표현할 수 있습니다.
컴퓨터 내부의 장치 사이에 통신 제어용으로 사용합니다.
Parity Bit(1) + Zone Bits(3) + Digit Bits(4)로 구성


댓글

이 블로그의 인기 게시물

[소프트웨어공학] NS(Nassi-Schneiderman) 차트

[컴퓨터네트워크] Telnet이란?

[Python] # -*- coding: utf-8 -*-를 쓰는 이유