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

C/C++ Q/A
[5659] Re:C언어와 관련된 것은 아니지만..
Hwan [] 1956 읽음    2006-03-28 11:36
0x000 님이 쓰신 글 :
: 10진수를 2진수로 바꾸는 법을 정확히 모르겠습니다.
: 알려주시면 대단히 감사하겠습니다.
:
: 추가로 10진수를 8진수로 바꾸는 법과
: 8진수를 2진수로 바꾸는 법을 알려주시면 감사하겠습니다.

시중에 돌아다니는 디지털 회로 같은 서적 참고하시면 상세하게 나와 있습니다.

원리는 생략하고 (책 찾아 보세요) 바꾸는방법을 가르쳐 드릴게요

ex) 254 (Decimal) => 11111110 (Binary)

254 / 2 = 127 (나머지 0)
127 / 2 = 63 (나머지 1)
63 / 2 = 31 (나머지 1)
31 / 2 = 15 (나머지 1)
15 / 2 = 7 (나머지 1)
7 / 2 = 3 (나머지 1)
3 / 2 = 1 (나머지 1)
1 / 2 = 0 (나머지 1)
0 / 2 = 0

이렇게 2를 반복해서 나눠서 나누려는 수가 0이 될 때 까지 나눈 뒤에, 나머지 값들을 역순으로 쭉 적어주시면 됩니다.

다른 예를 들어볼까요?

ex) 141 (Decimal) => 10001101(Binary)

141 / 2 = 70 (나머지 1)
70 / 2 = 35 (나머지 0)
35 / 2 = 17 (나머지 1)
17 / 2 = 8 (나머지 1)
8 / 2 = 4 (나머지 0)
4 / 2 = 2 (나머지 0)
2 / 2 = 1 (나머지 0)
1 / 2 = 0 (나머지 1)
0 / 2 = 0

그리고 8진수로 바꾸는 법은 2진수를 3자리씩 묶어서 생각하시면 되고요 (2의 3제곱은 8)

254(Decimal) = 11111110 (Binary) => 011 111 110 (Binary) = 376 (Octadecimal)

16진수로 바꾸는 법은 마찬가지로 2진수를 4자리씩 묶으서 생각하시변 됩니다 (2의 4제곱은 16)

254(Decimal) = 11111110(Binary) => 1111 1110 (Binary) = FE (Hexadecimal)

이런 류의 질문은 네이버 지식in 등에도 많이 있으니 다음번엔 좀더 검색해 보시고 올리시는것도 좋겠네요.

+ -

관련 글 리스트
5657 C언어와 관련된 것은 아니지만.. 0x000 1859 2006/03/27
5659     Re:C언어와 관련된 것은 아니지만.. Hwan 1956 2006/03/28
5661         Re:Re:답변해 주셔서 감사합니다. 0x000 1813 2006/03/28
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.