티스토리 뷰

알고리즘/알고리즘 종류

진수

HAN_PY 2020. 5. 16. 18:25
반응형

10진수를 타진수로 변환하기

원하는 타진법의 수로 나눈 뒤 나머지를 거꾸로 읽는다.

 

2진수를 8진수로 바꾸기

3개씩 묶어서 계산한다

 

2진수를 16진수로 바꾸기

4개씩 묶어서 계산한다

 

ex) (149)10 = (10010101)2

                = (225)8

                = (95)16

 

10진수 외의 다른 진수는 접두어가 붙는다

2진수: 0b

8진수: 0o

16진수: 0x

 

내장함수를 이용해서 10진수를 변환하기

val = 40
b = bin(val)
o = oct(val)
h = hex(val)

이때 결과는 문자열이고 접두어가 추가되어 출력된다.

 

 

format 내장함수 사용해서 10진수를 다른 진수로 변환하기

val = 40
b = format(val, '#b')
o = format(val, '#o')
h = format(val, '#x')

b = format(val, 'b')
o = format(val, 'o')
h = format(val, 'x')

이때 결과는 문자열이고 #의 유무에 따라 접두어의 유무가 결정된다.

 

 


 

컴퓨터에서 음의 정수를 표현하는 방법은 1의보수를 이용하거나 2의 보수를 이용하면 된다. 부호 비트인 첫번 째 자리에 양수인 경우 0을 넣고 음수인 경우에 1을 넣으면 된다.

1의 보수(거의 안씀)

부호와 절대값으로 표현된 값을 보호 비트를 제외한 나머지 비트들을 0은 1로, 1은 0으로 변환

2의 보수

1의 보수방법으로 표현된 값의 최하위 비트에 1을 더한다.

 

ex

6            00000110

1의보수    11111001

2의보수    11111010

 

ex

3에 대한 10의 보수는 7

0에 대한 1의 보수 1

1에 대한 1의 보수 0

 

반응형

'알고리즘 > 알고리즘 종류' 카테고리의 다른 글

[python] 백트래킹(backtracking)  (0) 2020.10.01
순열_python  (0) 2020.05.20
엔디안(Endianness)  (0) 2020.05.14
비트 연산  (0) 2020.05.12
복잡도 분석  (0) 2020.05.08
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함