아스키 코드
본문 바로가기
카테고리 없음

아스키 코드

by 124578 2021. 6. 28.

아스키 코드

1. 아스키 코드란?

아스키 코드란 (ASCII) American Standard Code for Information Interchange 의 약어 입니다. 이는 미국 ANSI 에서 만든 표준 코드 체계 입니다. 주로 통신용 코드에 사용됩니다. 7비트로 인코딩 되어 있는 부호코드로써 숫자, 알파벳문자, 특수문자를 표현 할 수 있습니다. 

 

현재는 통신용 프로그램 개발에 표준으로 사용합니다. 장비의 프로토콜을 정할 때 기준으로 사용하기도 합니다.

외우기도 애매한 아스키 코드는 개발할때 한번씩 찾게되는 코드 표입니다. 현재 0~127번까지 사용가능하며 128~255번까지는 사용되지 않고 있습니다. 기본적으로 컴퓨터는 0과1 밖에 인식할 수 밖에는 없지만 아스키코드에서는 인간이 표현해야하는 부호를 이진수로도 표현 가능하도록 부호화 한 것입니다.

 

2. 아스키 코드의 통신 부호 설명

통신용 코드에서의 사용되는 문자 NULL, SOH, STX, ETX, EOT, ENQ, ACK, BEL, NAK, SYN 입니다. 

이 부호를 이용해 통신용 프로토콜을 작성 할 수 있습니다.

 

NULL : 데이터가 공백일 때 사용합니다.

SOH: 시작 대기 상태 입니다.

STX: 프로토콜 시작 문자 입니다.

ETX: 프로토콜 끝 문자 입니다.

EOT: 전송 완료 문자 입니다.

ACK: 통신이 인증 되었음을 나타낸 문장립니다.

NAK: 통신이 인증되지 않음을 나타냅니다.

 

다양한 통신문자가 있지만 위의 문자를 모두 반드시 사용하지 않고 프로그램 해도 상관은 없습니다.

하지만 여전히 ASCII코드를 사용하는 이유는 전세계 표준이기 때문에 애매한 임의의 통신코드를 만들어 사용하는 것보다 표준을 사용하는게 맞기 때문입니다. 표준 코드인 ASCII를 사용하지 않으면 제제를 하는 것인지는 알 수 없으나 현재까지도 많은 장비에서 통신용 프로토콜을 ASCII를 사용하는 제품이 여전히 많습니다.

 

  • 프로토콜 예

영문자 OK라는 문자를 보내서 그응답을 받았다는 ACK응답을 받게끔 구현

 

전송: 0x02(STX) 0x4F(O) 0x4B(K) 0x03(ETX) 

응답: 0x02(STX)  0x06(ACK) 0x03(ETX) 

 

영문자 RUN을 보내고 그 명령을 실행하지 못해서 NAK를 보낸 경우

 

전송: 0x02(STX) 0x52(R) 0x55(U) 0x4E(N) 0x03(ETX)

응답: 0x02(STX)  0x06(NAK) 0x03(ETX) 

 

3. 아스키 코드표

현재 사용되고 있는 ASCII 코드는 아래와 같습니다. (0~127)

ASCII 코드1
ASCII 코드표1

 

 

ASCII 코드2
ASCII 코드표2

 

 

ASCII 코드3
ASCII 코드표3

댓글


TOP

TEL. 02.1234.5678 / 경기 성남시 분당구 판교역로