C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[67580] 이진수 변환
박지훈.임프 [cbuilder] 1461 읽음    2012-06-19 17:16
아무래도 전산개론 공부를 하셔야 할 거 같은데요.
이진수든 16진수든 그건 보는 사람의 입장에서 표현하는 방법이 다른 것이지 실제로 읽는 데이터와는 별개의 문제죠.
그리고 메모에 0, 1, 이렇게 표시된다면, 정확하게는 이미 문자열로 변환된 것이구요.

어쨌든, 아래 함수는 제가 예전에 만들어놨던 정수->2진수(정확하게는 2진수 형태의 문자열) 변환 함수입니다. 파일에서 읽은 값들을 바이트별로 integer로 캐스팅한 후에 이 함수의 첫번째 인자로 넣으면 됩니다. 두번째 인자는 길이인데 바이트 단위니까 8을 넣어주면 되죠.

function IntToBin(Value, Digits: integer): string;
begin
  while Value<>0 do
  begin
    Result := Char((Value and 1)+Ord('0')) + Result;
    Value := Value shr 1;
  end;
  if Digits>Length(Result) then
    Insert(StringOfChar('0', Digits-Length(Result)), Result, 1);
end;




축구 님이 쓰신 글 :
: 아 전 0,1 로만 표기 하려고요
:
: 저거를 2진수로 바꾸면 되는지 아니면 아예 처음부터 바이너리로 읽어올 수 가 있는지
:
: 근데 파일스트림 리드하면 2진수로 바이너리로 기본으로 읽힌다고 알고 있거덩요.
:
: 근데 그걸 출력하면 값이 그대로 출력이 되서 어떤명령을 써야 0,1로 출력 하는지 그게 궁금해서요 ㅎ
:
:
: 박지훈.임프 님이 쓰신 글 :
: : 파일의 내용을 메모장으로 뿌리려고 하신다고 하시지 않으셨나요.
: : 그러면 파일의 각 바이트를 IntToHex()에 넣어서 16진수 형태의 2바이트짜리 문자열로 만들고 이걸 메모에 뿌리면 되겠지요. 파일의 각 바이트는 AnsiChar로 나오니까 IntToHex()에 넣을 때 integer로 캐스트해야 할 거구요.
: :
: : 혹시 16진수 헥스코드값을 뿌리려는 게 아니고 다른 의미이신지?
: : 바이너리 값을 사람이 볼 수 있게 뿌리는 방법은 일반적으로 16진수 표기인데요.
: :
: :
: : 축구 님이 쓰신 글 :
: : : 해보니까요 아스키코드 값으로 나오는데 이걸 2진수로 바꿔주면 되는건가요?
: : :
: : :
: : : 박지훈.임프 님이 쓰신 글 :
: : : : 헬프에서 IntToHex()를 찾아보시면 어떻게 할지 감이 오실 겁니다.
: : : :
: : : :
: : : : 축구 님이 쓰신 글 :
: : : : : 어떤파일이든지 0과 1로 구성이 되있는데 이것을 메모장에 찍어줄때는 어떤 명령어를 써야 하는지요?

+ -

관련 글 리스트
67571 파일 질문좀요 축구 1018 2012/06/19
67574     Re:파일 질문좀요 박지훈.임프 1066 2012/06/19
67576         Re:Re:파일 질문좀요 축구 1062 2012/06/19
67577             Re:Re:Re:파일 질문좀요 박지훈.임프 1047 2012/06/19
67578                 Re:Re:Re:Re:파일 질문좀요 축구 1038 2012/06/19
67580                     이진수 변환 박지훈.임프 1461 2012/06/19
67583                         Re:이진수 변환 축구 1756 2012/06/19
67575         Re:Re:파일 질문좀요 축구 1092 2012/06/19
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.