Home
Support
타입캐스트(Typecast)함수를 이용하여 숫자를 ASCII 문자로 변환할때 왜 공백이 생기게 됩니까?
타입캐스트(Typecast)함수를 이용하여 숫자를 ASCII 문자로 변환할때 왜 공백이 생기게 됩니까?
주요한 소프트웨어:
주요한 소프트웨어 버전: 6.1
문제가 해결된 소프트웨어 버전:
부차적인 소프트웨어: N/A
문제점: 숫자 60을 ASCII 문자로 변환하려고 합니다. 60에 대한 ASCII 문자는 "<" 입니다. 그러나 다음과 같이:
<
나타나는 대신에, 다음과 같은 출력으로 나오게 됩니다.:
<
(세개의 공백이 나타나고 ASCII 문자가 나타남)
왜 이런 현상이 발생되는 것입니까?
솔루션: 숫자 60의 데이타타입은 I32로 선언되어 있습니다. 그러므로 60의 문자표현은 "0000 003C"(총 4바이트 길이)입니다. 그래서, 헥사표현이 ASCII 형식으로 전환될 때, 각각의 바이트를 읽어들여 그에 맞게 변환하게 됩니다. 이 의미는 :
00 = 널(null) (또는 공백으로 나타남)
3C = < (60 의 ASCII 표현)
이것이 00 (공백) 00 (공백) 00 (공백) 3C (<) 로 나타나는 원인입니다.
이 문제를 해결하는 두가지 방법이 존재합니다.:
해법 1:
- 프런트 패널에 가십시오.
- 60이라는 숫자를 포함하는 컨트롤위에 가서 마우스 오른쪽 버튼을 누르십시오.
- 형(Representation)을 선택하십시오.
- I8을 선택하십시오.
해법 2:
- 블럭다이어그램에 가십시오.
- 블럭 다이어그램에서 마우스 오른쪽 버튼을 누르십시오.
- "All functions » Numeric Pallette » Conversion Pallette » To Byte Integer VI"를 선택하십시오.
- 타입캐스트(Typecast) VI 를 연결하기전에 이 VI를 연결하십시오.
이 방법에 대한 예제는 아래 첨부되어 있으므로 참고하시기 바랍니다.
관련 링크:
첨부: - Typecast Example.vi
리포트 날짜: 04/07/2006
마지막 업데이트: 08/06/2006
문서 번호: 3W6DCEIH
Other Support Options
Ask the NI Community
Collaborate with other users in our discussion forums
Request Support from an Engineer
A valid service agreement may be required, and support options vary by country.