Shift 연산?
컴퓨터 연산 중에는 shift 연산이 있다. shift 연산이란, 비트 부호를 오른쪽으로 혹은 왼쪽으로 한 칸씩 이동하는 것을 말하는 데, 통상적으로 왼쪽으로 이동하면 x2 의 효과가 나타나고 오른쪽으로 이동하면 /2 의 효과가 나타난다. 이러한 Shift 연산은 두 가지로 나뉘는 데, 그게 바로 Arithmetic shift 와 Logical shift 이다.
Logical Shift 논리적 시프트
왼쪽으로 이동하든 오른쪽으로 이동하든간에 이동이 완료되어서 비어버린 자리에 0을 채워주는 기법을 말한다.
Arithmatic Shift 산술적 시프트
만약 시프트하려는 수가 Unsigned number, 즉 양수라면 논리적 시프트였을 때와 같이 0을 채워넣어주면 된다. 그러나 만약 시프트하려는 수가 signed number, 즉 음수라면 이야기가 다르다. 음수인 경우, 오른쪽으로 이동한다면 빈 자리에 1을 채워주어야 한다.
'컴퓨터 공학 > 컴퓨터구조' 카테고리의 다른 글
[컴퓨터구조] CPU가 연산하는 방법 (0) | 2021.10.15 |
---|---|
[컴퓨터구조] Big Endian/Little Endian (0) | 2021.10.13 |
[컴퓨터구조] 램(RAM)의 구조 뜯어보기 (0) | 2021.10.12 |
[논리회로] 레지스터(register) 구조 (바이트 메모리 + 출력 제어기) (0) | 2021.10.09 |
[논리회로] 비트메모리 : 메모리가 비트를 저장하는 방법 (0) | 2021.10.08 |