dongdorodongdong
보수, 2진 연산, 부동 소수점 표현 본문
보수
- 정의
- 컴퓨터가 기본적으로 수행하는 덧셈 회로를 이용하여 뺄셈을 수행하기 위해 사용 - r의 보수
"보수를 구할 숫자의 자릿수만큼 0을 채우고 가장 왼쪽에 1을 추가하여 기준을 만듬"
- 33의 10의 보수
>
33 + X = 100
X = 67
- 10101의 2의 보수
>
10101 + X = 100000
X = 01011 - r-1의 보수
"주어진 숫자의 자릿수만큼 9, 1을 채워 기준을 만듬"
- 33의 9의 보수
>
33 + X = 99
X = 66
- 10101의 1의 보수
>
10101 + X = 11111
X = 01010 - 특징
- 2의 보수 표현법이 1의 보수 표현법에 비해 음수 표현 시 숫자 1개를 더 표현할 수 있어서 널리 사용
- 추가로, 0이 하나만 존재하기 때문에 0의 판단이 쉽다는 장점이 있음
2진 연산
- 정의
- 정수값을 2진수로 변환하여 표현하는 방식 - 특징
- 표현할 수 있는 범위가 작음
- 연산 속도가 빠름
- n Bit 크기의 워드가 있을 때 맨 처음 1Bit는 부호(Sign) 비트로 사용
- 나머지 n-1 Bit에 2진수로 표현된 정수값이 저장된다. - 양수
- 부호(Sign) 비트에 0을 넣고, 변환된 2진수 값을 Data Bit의 오른쪽에서 왼쪽 순으로 채우고 남는 자리에 0을 채움 - 음수
1. 부호화 절대치법
- 양수 표현에 대하여 부호 Bit의 값만 1로 바꿔줌
- 두 가지 형태의 0이 존재(+0, -0)
- n=8일 때, -127 ~ +127
2. 부호화 1의 보수법
- 양수 표현에 대하여 1의 보수를 취함
- 두 가지 형태의 0이 존재(+0, -0)
- n =8일 때, -127 ~ +127
3. 부호화 2의 보수법
- 양수 표현에 대하여 2의 보수를 취함
- 한 가지 형태의 0이 존재(+0)
- n=8일 때, -128 ~ +127
부동 소수점 표현
- 정의
- 소수점이 포함된 실수 데이터의 표현과 연산에 사용하는 방식 - 특징
- 고정 소수점 방식보다 매우 큰 수, 작은 수, 정밀한 수를 적은 비트로 표현 가능
- 고정 소수점 방식보다 연산 시간이 많이 걸림
- 지수부, 가수부를 분리하는 정규화 과정이 필요 - FLOPS
- 1초에 수행할 수 있는 부동 소수점 연산의 수행 횟수
- 컴퓨터의 연산 속도를 나타내는 단위로 사용
- MFLOPS (1초에 10^6번 수행)
- GFLOPS (1초에 10^9번 수행)
- TFLOPS (1초에 10^12번 수행) - 표현법
- 단정도 (4Byte 사용)
- 배정도 (8Byte 사용) - 덧셈, 뺄샘
- 0인지 여부를 조사
- 두 자료의 지수를 비교한 후 소수점의 위치를 이동하여 지수가 큰 쪽에 맞춤
- 가수부 값끼리 더하거나 뺌
- 결과를 정규화 - 곱셈
- 0인지 여부를 조사
- 지수를 더함
- 가수를 곱함
- 결과를 정규화 - 나눗셈
- 0인지 여부를 조사
- 부호를 결정
- 피제수가 제수보다 작게 피제수의 위치를 조정
- 지수의 뺄셈
- 가수의 나눗셈
부호(Sign) 0~1Bit |
지수부 1~7Bit |
가수부 8~31Bit |