이진 코드

난1렙이요·2024년 9월 12일

컴퓨터 회로

목록 보기
4/15

이진 코드

컴퓨터에서 어떠한 정보를 표현하려면 다른 정보와 구분할 수 있는 방법이 필요하다. 컴퓨터는 0과 1로 정보를 표현하는데, 이것은 단순한 숫자를 표현하는 것 뿐만 아니라 그 밖에 것들도 표현할 수 있어야 한다. 그래서 0과 1을 숫자로 보기보단 기호로 보는 것이 더 좋다. 하나의 정보에 대해서 표현된 것을 코드(code)라고 하며, 하나의 코드는 하나의 정보만 표현해야한다.

코드는 숫자가 아닌 정보를 표시하기 위한 숫자로 이루어진(0,1) 기호다.

이진수로 표현된 십진수(BCD)

숫자도 기호로써 사용을 할 때가 있다. 십진수는 0~9까지 10개가 있는데, 비트가 n개 있으면 2^n개의 기호를 표현할 수 있으므로, 2^4 = 16인 4개가 있어야 십진수를 표현할 수 있다. 이렇게 0~9를 표현하고, 1010~1111는 쓰이지 않는다.

BCD로 표현된 덧셈은 가능하지만, 중간에 자릿수가 많아지면 문제가 생긴다. 그러면 (0110)2인 6을 더해주는 방식으로 해소할 수 있지만, 잘 쓰이지는 않는다.

아스키 코드(ASCII Code)


다음은 컴퓨터에서 자주 쓰이는 여러가지 문자들을 표현하기 위해서 만든 코드이다. 이를 아스키 코드라고 부르며, 2^7 = 128개의 부호가 쓰인다. 다양한 분야에서 굉장히 많이 쓰인다.

오류 발견 코드(Error-Detecting Code)

데이터를 주고받거나 신호를 주고 받을 때, 오류가 발생했는지 아닌지를 파악하기 위해서 사용되는 코드다.

Parity bit

신호에 parity bit를 하나 더해준다. 이로 인해서 오류가 있는지를 확인할 수 있다.

  • even parity : 더해주는 parity bit를 포함해서 전체에 1이 짝수 갯수만큼 있도록 parity bit을 더해주는 방법이다.
  • odd parity : 더해주는 parity bit를 포함해서 전체에 1이 홀수 갯수만큼 있도록 parity bit을 더해주는 방법이다.

even parity방법과 odd parity방법은 서로 소통이 되지 않으므로 데이터가 변조되면 찾을 수 있다. 그러나 각각의 방법에 맞게 변조되면 데이터가 변조된 것을 파악하지 못한다는 단점이 있으며, 만약 데이터 변조를 파악을 해도 어디가 변조되었는지를 모른다는 단점이 있다.

profile
다크 모드의 노예

0개의 댓글