안녕하세요 sdk입니다
오늘은 진법에 대해 알아보도록 하겠습니다
우선 10 진수 먼저 보면
평상시 우리가 쓰는 방식으로써
숫자 10개를 이용하여 숫자를 표현하는 방법으로
0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9
를 이용하여 숫자를 나타내는것 입니다
이런식으로 말이죠
그럼 2진수를 알아볼까요
2진수는
단 0 , 1 을 이용하여 숫자를 표현하는 방법입니다
10 진수 |
1 |
2 |
3 |
4 |
5 |
2 진수 |
1 |
10 |
11 |
100 |
101 |
단 2가지 수로 숫자를 나타내는것을 2진수 라고 하며
주로 컴퓨터에서 사용됩니다
켜짐 ( 1 )
꺼짐 ( 0 )
을 이용해 나타낼수도 있죠.
그럼
10진수에서 2진수로 변환하는 방법을 알아보도록 하겠습니다
과정만 설명하자면
1. 2진수로 변환할 숫자를 2로 나눕니다. 나머지는 옆에 써둡니다
2 . 1이 될때까지 반복
3. 마지막에 남은 1을 앞으로 나머지를 쭉 써주면 됩니다
ex)
10을 2진수로 나타내면
맨 마지막 몫인
이걸 거꾸로 읽어
1 0 1 0 으로 쓰면 되겠습니다
반대로 2 진수에서 10진수로 나타내는 방법을 알려드리겠습니다
이렇게 2진수가 있다면
간단하게
1이 존재하는 자릿수 - 1 제곱 해준뒤 더해주면 되는데요
이게 뭔소리냐면
1010 은
2진수 |
1 |
0 |
1 |
0 |
모두 더한다 |
|
|
|
|
즉 8 + 2 = 10 입니다
잘 이해가 안되시나요 ?
그러니까
1010은 총 4자리 숫자입니다
가장 처음 1이 등장한 자리수는 4번째 자리수 입니다
따라서 여기에 2의 ( 4 - 1 ) 제곱 그러니까 2의 3제곱을 해줍니다 따라서 8
그리고 다시 1이등장한 자릿수는 2번째 자릿수 이기 때문에 2의 ( 2 - 1 ) 제곱을 해줍니다 즉 2의 1제곱 따라서 2
그 8 과 2를 더하면 10이 나옵니다
이런식으로 하시면 되겠습니다.
다음포스팅때는 16진수에 대해 포스팅 하도록 하겠습니다
이상입니다.
'컴퓨터 > C언어' 카테고리의 다른 글
10진수 16진수 계산하기 (2) | 2015.09.01 |
---|---|
수학 ㅡ 2진수 16진수 변환하기 (7) | 2015.08.30 |
C언어 반복문 가벼운 문제 (7) | 2014.08.08 |
[C언어] 같은지 다른지 큰걸 확인하는 관계 연산자 (0) | 2013.09.04 |
9. C언어 값을 1증가,감소 시키는 증감연산자 (--,++) (2) | 2013.09.02 |