Computer System Architecture

Slides:



Advertisements
Similar presentations
10-7 부동소수점 (Floating-Point) 계산  컴퓨터에서 숫자를 표기하는 방법  가수 (Fraction) : 부호화된 고정소수점 숫자 지수 (Exponent) : 소수점의 위치를 표시 ( 예 )10 진수 를 표기하면 Fraction Exponent.
Advertisements

Ⅰ. 연산자 Ⅱ. 제어 구조. 연산자 : 할당 연산자 - 사용자가 정의한 변수에 임의의 값을 저장하는 기능 strvar = strVar1+ “ Hello ”
Chapter 04 컴퓨터에서 데이터 표현. 04 컴퓨터에서 데이터 표현 2 인코딩 (encoding) – 현실세계의 정보를 컴퓨터 내부에서 처리할 수 있는 이진수로 변환하는 방법 1. 컴퓨터 속에서 데이터 표현 원리 0 - 아빠 1 - 엄마 00 - 아빠 01 - 엄마.
13 강 논리회로 2 과목 전자계산기 구조 강사 이 민 욱. 13 강 논리회로  논리회로 1. 부울 대수 (Boolean Algebra) 에서 사용하는 기본 연산자 ① 논리부정 : NOT ( ` ) 논리부정은 F = NOT A 의 표현을 F =A` 로 표현 ② 논리곱.
6 장. printf 와 scanf 함수에 대한 고찰 printf 함수 이야기 printf 는 문자열을 출력하는 함수이다. – 예제 printf1.c 참조 printf 는 특수 문자 출력이 가능하다. 특수 문자의 미 \a 경고음 소리 발생 \b 백스페이스 (backspace)
Ⅱ. 정보의 표현과 관리. Ⅱ. 정보의 표현과 관리 2. 자료의 표현과 연산 1. 정보와 자료 구조.
컴퓨터와 인터넷.
재료수치해석 HW # 박재혁.
Lecture #5 어셈블리어 (2) 매크로 어셈블리어 시스템프로그래밍.
데이터의 표현 (data Representation)
Chapter 04 C 연산자의 이해.
Lecture #4 제3장. 컴퓨터 산술과 논리 연산.
P150 문제를 프로그래밍 할 것 Source file (헤더파일포함), 실행화면 (학번_이름_1.txt)
2장. 데이터의 표현 Lecture #2.
컴퓨터 프로그래밍 기초 #02 : printf(), scanf()
Error Detection and Correction
Computer Architecture 3장
Part 05 순수한 연산자 ©우균, 창병모 © 우균, 창병모.
6장. printf와 scanf 함수에 대한 고찰
PSW : PROGRAM STATUS WORD
ATmega128 FND 실습 휴먼네트웍스 기술연구소
DK-128 FND 실습 아이티즌 기술연구소 김태성 연구원
근사값과 반올림 오차 절단 오차와 Taylor 급수 오차의 전파
Ⅱ. 정보의 표현 1. 진수 변환 2. 2진수의 연산 3. 실수의 표현 ■ 단원 학습 정리 1. 10진수와 2진수
3장. 데이터의 표현과 컴퓨터 연산 다루는 내용 진법과 진법 변환 연산과 보수 데이터의 표현 산술 연산 논리 연산.
누산기를 이용한 직렬(Serial) 덧셈기
JA A V W. 03.
디지털회로설계 (15주차) 17. 시프트 레지스터와 카운터 18. 멀티바이브레이터 * RAM & ROM.
Chapter 07 프로세서와 연산장치.
어셈블리어 (2) 매크로 어셈블리어 시스템 프로그래밍 - Lecture #4
Lesson 4. 수식과 연산자.
자료구조: CHAP 7 트리 –review 순천향대학교 컴퓨터공학과 하 상 호.
Quiz #7 다음 수들을 합병 정렬과 퀵 정렬 알고리즘을 이용하여 오름 차순으로 정렬하였을 때, 데이터 이동 회수를 각각 구하라. 여러분은 정렬 과정을 단계별로 보이면서 이동 회수를 추적해야 한다. 단, 퀵 정렬시에 피봇으로 배열의 왼쪽 첫 번째 원소를 선택한다. 5.
플립플롭, 카운터, 레지스터 순서회로 플립플롭 카운터 레지스터.
디지털 시스템 2010년 1학기 담당교수: 최선영 연구실: 산학연구관 6층 602 ( )
DK-128 FND 실습 아이티즌 기술연구소
오브젝트 순서회로 IT CookBook, VHDL을 이용한 디지털 회로 입문.
연산자 (Operator).
6 레지스터와 카운터.
6. 레지스터와 카운터.
제4강 처리장치 1.
8장. spss statistics 20의 데이터 변환
1. 2진 시스템.
Chapter 07 비트와 여러 연산자.
CHAPTER 02. 정보의 표현 정보 체계_컴퓨터 내부의 정보 표현과 정보 처리
정보의 표현 정보 체계_컴퓨터 내부의 정보 표현과 정보 처리
10장. 실현기술 10.1 유한 어장 영향 10.2 디지털 필터의 기본 하드웨어 10.3 하드웨어에 의한 디지털필터 실현
계산기.
제3장 함수와 배열수식 전진환
에어 PHP 입문.
4장. 데이터 표현 방식의 이해. 4장. 데이터 표현 방식의 이해 4-1 컴퓨터의 데이터 표현 진법에 대한 이해 n 진수 표현 방식 : n개의 문자를 이용해서 데이터를 표현 그림 4-1.
Chapter 1 단위, 물리량, 벡터.
DA :: 퀵 정렬 Quick Sort 퀵 정렬은 비교방식의 정렬 중 가장 빠른 정렬방법이다.
AT MEGA 128 기초와 응용 I 기본적인 구조.
5장. 선택 알고리즘.
3. 반/전 가산기, 반/전 감산기 제작 컴퓨터 구조 실습 안내서.
ARM Development Suite v1.2
생체 신호의 실시간 디지털 처리 7조 홍윤호( )-1등
제11강 PC정비사 1급(필기) Lee Hoon Copyright(c) 2008 LeeHoon All rights reserved.
논리회로 설계 및 실험 4주차.
9 장 오류 검출 및 오류 정정 9.1 오류 종류 9.2 검출 9.3 오류 정정 9.4 요약.
8장. 연산 장치 Lecture #8.
TVM ver 최종보고서
제10강 PC정비사 1급(필기) Lee Hoon Copyright(c) 2008 LeeHoon All rights reserved.
수치해석 ch3 환경공학과 김지숙.
Computer System Architecture
컴퓨터는 어떻게 덧셈, 뺄셈을 할까? 2011년 10월 5일 정동욱.
버스와 메모리 전송 버스 시스템 레지스터와 레지스터들 사이의 정보 전송을 위한 경로
ARM Development Suite v1.2
3장. 데이터의 표현과 컴퓨터 연산 다루는 내용 진법과 진법 변환 연산과 보수 데이터의 표현 산술 연산 논리 연산.
Presentation transcript:

Computer System Architecture 제 4 장 연산 컴퓨터구조 Computer System Architecture 멀티미디어공학과 김 해영 hykim@tu.ac.kr

제 4 장 연산 수치 연산 비수치 연산 구성

제 4 장 연산 컴퓨터 연산이란? 컴퓨터 외부에서 들어오는 입력 데이터, 컴퓨터 내부의 기억장치 내에 저장 되어 있는 데이터와 중앙처리장치 내의 레지스터 내에 저장 되어 있는 데이터 등을 가지고 중앙 처리장치 내의 산술 논리 연산장치를 이용하여 처리하는 것 비수치 연산 : 논리 연산과 문자 데이터의 처리에 대한 연산 수치 연산 : 덧셈, 뺄셈, 곱셈, 나눗셈 등의 사칙 연산에 의한 산술연산 데이터의 수에 따라 단항 연산(unary operation) : 입력데이터의 수가 하나 뿐일 때의 연산, 논리 시프트, 로테이트, 산술 시프트, 보수 등 이항 연산 (binary operation) : 입력데이터가 2개일 때의 연산, 사칙 연산, AND, OR, XOR 등 중앙처리장치 내의 산술 논리 연산장치가 연산을 수행하기 위해서는 연산에 사용될 데이터를 준비  중앙처리장치의 레지스터(register)에 적재

제 4 장 수치 연산 수치연산 : 고정 소수점 표현 방식으로 나타낸 수의 연산을 기본으로 부동 소수점 표현 방식으로 나타낸 수의 연산을 병용하여 사칙연산 수행 감 산 : 보수의 가산으로 연산을 수행 곱 셈 : 가산의 반복이나 산술 시프트 연산을 이용 나눗셈 : 감산의 반복이나 산술 시프트 연산을 이용 산술 시프트(Arithmetic Shift) 곱셈과 나눗셈 연산에 보조적으로 사용 좌측/우측 시프트, 클록과 동기 되어 모든 비트들이 좌측/우측으로 이동 부호 없는 n비트 양의 정수에 대한 산술 시프트 우측 시프트 : 최소 유효비트 A0 가 손실되고, An-1자리에 0이 첨가됨, truncation 발생 a) 1110 (우측시프트) 0111 : 14  7 : 2 로 나눈 값고 같음 b) 1111 (우측시프트)0111 : 15 7 : 2로 나눈값의 소수점 이하가 없어짐  truncation 좌측 시프트 : 최대 유효비트 An-1 가 손실되고, A0에 0이 첨가됨, overflow 발생 a) 0111 (좌측시프트) 1110 : 7  14 : 2를 곱한 값과 같음 b) 1001 (좌측시프트)0010 : 9 2 : 2를 곱한 값보다 훨씬 작은 값이 됨  overflow 우측 시프트 좌측 시프트

제 4 장 수치 연산 부호가 있는 n 비트 수에 대한 산술 시프트 고려 부호 절대값 부호와 2의 보수 부호와 1의 보수 부호 비트는 불변, 첨가되는 비트는 항상 ‘0’ 1 01100 (왼쪽 시프트) 1 11000 우측시프트 : 부호 비트가 복사되어 한 비트씩 우측으로 이동 좌측시프트 : A0 에 ‘0’이 첨가되어 한 비트씩 왼쪽으로 이동 1 10100 (왼쪽 시프트) 1 01000 좌/우측 시프트 : 부호 비트가 복사되어 한 비트씩 좌/우측으로 이동 1 10011 (왼쪽 시프트) 1 00111

제 4 장 수치 연산 부호가 있는 n 비트 수에 대한 산술 시프트 고려 양수 : +12 : 0 01100 오른쪽 시프트 +6 : 0 00110 부호가 있는 수 - 부호 + 절대값 : -12 : 1 01100 오른쪽 시프트 -6 : 1 00110 - 부호 + 1의 보수 : -12 : 1 10011 오른쪽 시프트 -6 : 1 11001 - 부호 + 2의 보수 : -12 : 1 10100 오른쪽 시프트 -6 : 1 11010

제 4 장 수치 연산 고정 소수점 수의 연산 덧셈 부호와 절대값, 부호와 1의 보수, 부호와 2의 보수 연산 방법 서로 상이 부호 절대값 두 수의 부호 비트가 같으면 덧셈 두 수의 부호비트가 다르면 뺄셈(큰 수 – 작은 수), 부호(sign) : 큰 수의 부호 부호와 1의 보수 : 두 수를 더한다 +6 0 000110 -6 1 111001 +) - 9 + 1 110110 +) +9 + 0 001001 -3 1 111100 +3 1 0 000010 + 1 0 000011 부호와 2의 보수 : 부호 비트를 포함하여 두 수를 더한다 +6 0 000110 -6 1 111010 +) -9 + 1 110111 +) +9 + 0 001001 -3 1 111101 +3 1 0 000011 (-12) + (-13) = -25 (+12) + (+13) = +25 (+25) + (-37) = 37 - 25 = -12 캐리가 발생  1을 한번 더 더함 버린다 캐리는 버린다.

제 4 장 수치 연산 뺄셈 (± A) - (+ B) = (± A) + (- B) 뺄셈 : 감수를 보수로 바꾸어 가산 n자리의 두 수를 더해 (n+1)자리의 합이 발생  범람(overflow) 범람 발생  f/f  1로 set 2의 보수 덧셈과 뺄셈을 위한 하드웨어 블록도

제 4 장 수치 연산 범람 (overflow) 레지스터의 길이  한정, 범람 발생 범람 : n자리의 두 수를 더해서 n+1자리의 합이 발생할 시 범람이 발생  오버플로 플립플롭을 세트 범람의 검사 부호가 없는 수 : 최상위 비트(MSB)에서 end carry가 발생  범람 부호가 있는 수 주의 : MSB는 부호 비트이며, 부호 비트도 수의 일부분으로 간주 end carry(부호비트)는 오버 플로로 간주하지 않음 (1) 부호 절대값 : 절대값의 최대 유효비트(MSB)에서 캐리 발생 범람 (2) 부호와 2의 보수  ①,②의 carry 가 서로 다르면 범람 발생 (① 부호비트에서 발생된 캐리) XOR (② 부호비트 아래에서 발생된 캐리) ① ② * 예제 carries 0 1 carries 1 0 + 70 0 1000110 - 70 1 0111010 + 80 0 1010000 - 80 1 0110000 + 150 1 0010110 - 150 0 1101010 Overflow f/f 세트 양수  음수부호 음수  양수부호

제 4 장 수치 연산 곱셈 : 소프트웨어적 연산, 하드웨어적 연산 가산기 : 소프트웨어적으로 연산 수행 곱셈 : 소프트웨어적 연산, 하드웨어적 연산 가산기 : 소프트웨어적으로 연산 수행 배열 승산기(Array processor) : 하드웨어적 연산 수행 소프트웨어에 의한 곱셈 : 덧셈이 기본 (1) 2(피승수) × 5(승수) (2) 2(피승수) × 5(승수) 0010 × 0101 0010(부분적) 0000 (부분적) 0010 (부분적) 0000 (부분적) 0001010(곱셈 결과) (1) 피승수를 승수의 횟수 반복 가산 (2) 좌측 시프트와 부분적(partial product)을 이용(10진수 곱셈과 동일) 0010 × 0101 = 0010 + 0010 + 0010 + 0010 + 0010 = 1010 (1) 승수의 각 자리에 하나씩 부분적이 나타나며, 이 부분적은 최종 곱셈 결과를 얻기 위해 합산된다. (2) 승수의 비트가 0이면 부분적 모두가 0, 승수의 비트가 1이면 피승수의 값(0010)이 부분적이 된다. (3) 각 부분적은 직전의 부분적에 비해 한 자리 왼쪽으로 자리이동(shift)된다. (4) n비트 부호가 없는 양의 정수에 대해 곱셈 결과를 오차 없이 나타내기 위하여 곱하는 두 수의 비트 합인 최대 2n 비트가 필요하다.

제 4 장 수치 연산 곱셈 두 번째 방법의 요점 반복적인 자리 이동(shift) 및 덧셈 올림수와 함께 오른쪽 로테이트 (1) 최종 부분적이 나타날 때까지 기다리지 않고 부분적이 나타날 때마다 합산을 수행한 후 결과를 오른쪽으로 한 자리 이동시킨다. (2) 승수의 값을 시험하여 1이면 피승수의 값을 누적시킨 후 한 자리 오른쪽으로 이동시키고, O이면 오른쪽으로 이동만 시킨다. (3) 승수의 각 비트가 1인지 0인지를 시험할 때는 승수를 올림수와 함께 오른쪽으로 한 비트씩 로테이트 하여 시험코자 하는 비트를 올림수 플립플롭에 넣어 시험하면 된다. 올림수와 함께 오른쪽 로테이트

제 4 장 수치 연산 곱셈 양의 정수 곱셈 알고리즘 (1) Z ← 0 (2) i ← 0 (3) 승수 Yi = 0이면 (4)를 수행하고, Yi=1이면 Z ← Z + X·2n (X와 Z의 최대 유효 비트를 같은 위치에 오도록 하고 덧셈을 함)를 수행 (4) 오른쪽으로 한 비트 시프트(Z ← Z·2-1) (5) i = n-1이면 (6)을 수행하고, 아니면 i = i+1한 후 (3)을 반복 수행 (6) Y를 원상으로 환원(즉 Y의 값을 한번 더 로테이트 하면 원래의 값이 된다)

제 4 장 수치 연산 곱셈 부호와 절대값 : 부호를 제외하고 곱셈, 부호가 같으면 양수, 부호가 Booth 알고리즘 서로 다르면 음수 부호와 2의 보수 : 음수를 양수호 변환 후 두 수의 곱을 구하고, 곱셈결과에 따라 음수일 경우에는 다시 2의 보수로 변환 Booth 알고리즘 - 2진수 00001110(+14)는 23에서 21(k=3, m=1) 자리 값이 1  00001110 = 2k+1 – 2m = 24 – 21 = 14 곱셈 동작은 승수의 값 0 : 부분적을 더할 필요 없이 시프트 승수의 값 1 : 2k+1 – 2m - M×14 = M × 24 - M × 21 피승수 M을 좌측으로 4번 시프트 한 수에서 좌측으로 한 번 시프트 한 수를 빼면 얻을 수 있음을 의미 (1) 승수의 1의 그룹에서 처음 0을 만나게 되면 피승수를 부분적으로부터 뺀다. (2) 승수의 0의 그룹에서 처음 1을 만나게 되면 피승수를 부분적에 더한다. (3) 승수에서 이전의 비트와 같은 비트가 나오면 부분적은 바뀌어지지 않는다.

제 4 장 수치 연산 곱셈 Booth 알고리즘을 위한 하드웨어 구성 승수 : Q 레지스터, Qn+1 플립플롭 : 승수의 값(0인지 1인지 구별) SC : 승수의 비트 수, 최종 결과 : A, Q 레지스터 Fig. 4-6 Booth 알고리즘을 위한 하드웨어

제 4 장 수치 연산 Booth 알고리즘 10 : 부분적 - 피승수 01 : 부분적 + 피승수 Fig. 4-7

제 4 장 수치 연산 예제 7 × 3 Booth 알고리즘을 이용한 곱셈 예

제 4 장 수치 연산 나눗셈 뺄셈을 기본 피제수에서 제수를 뺄 수 없을 때까지 반복하여 뺀 후 횟수는 몫 뺀 후 남은 값은 나머지 피제수(A)와 제수(B)를 비교 부분 나머지(피제수) >= 제수  몫은 1, 제수를 우측 시프트, 부분나머지(피제수) - 제수 부분 나머지(피제수) < 제수  몫은 0, 제수를 우측 시프트

제 4 장 수치 연산 나눗셈 앞의 과정 변형 제수를 오른쪽 시프트 하지 않고 피제수 혹은 부분 나머지를 왼쪽으로 시프트 피제수 혹은 부분 나머지 – 제수 = 피제수 혹은 부분 나머지 + 제수(B)의 2의 보수 E : 피제수와 제수의 크기 비교(E=1이면 몫 Qn = 1, E=0이면 Qn = 0) Fig. 4-8 부호 없는 양의 정수 나눗셈 하드웨어

제 4 장 수치 연산 나눗셈 알고리즘의 순서도

제 4 장 수치 연산 예제 48÷7 Q : 몫, A : 나머지 피제수 = 48 나머지 몫

제 4 장 수치 연산 음의 정수의 나눗셈 부호와 절대값 부호와 2의 보수, 부호와 1의 보수의 경우 부호와 절대값 부호를 제외한 절대값의 계산은 양의 정수에 대한 알고리즘과 동일 몫과 나머지의 부호는 각각 피제수와 제수의 부호에 의해 결정 - 몫은 피제수와 제수의 부호가 같을 때는 양수가 되고, 부호가 서로 다를 때에는 음수 - 나머지의 부호는 피제수의 부호와 동일 부호와 2의 보수, 부호와 1의 보수의 경우 부호와 절대값 음수를 양수로 변환한 후 양수의 나눗셈과 동일한 알고리즘을 적용하되 피제수와 제수의 부호가 다른 경우에는 몫을 다시 각각의 음수 표현 방법으로 변환 피제수가 음수일 경우에는 나머지도 각각의 음수 표현 방법으로 변환해 주어야 함

제 4 장 수치 연산 부동 소수점 수의 연산 덧셈과 뺄셈 지수 부분과 소수 부분 ( 0.123 x 102, 0.123 x 10-2 ) 두 개의 부분에 대해 각각 독립적으로 연산, 고정 소수점 연산 방식 사용 덧셈과 뺄셈 가수의 정렬 필요 즉, 지수부 조정 작은 지수 값을 가진 가수를 시프트 덧셈과 뺄셈 알고리즘 예 # 정규화된 두 수의 덧셈에서 범람이 발생 할 경우에는 그 합을 오른쪽 으로 한자리 시프트 시킨 후 지수를 하나 증가 시킴 (0.91 + 0.32 =1.23  0.123 x 10-1 ) (1) 0인지 여부를 검사 (2) 가수의 위치 조정 (3) 가수의 덧셈 혹은 뺄셈 (4) 결과를 정규화 A=0.12345×104 B=0.6789×103 A + B = 0.12345×104 + 0.6789×103 = (0.12345 + 0.06789) × 104 = 0.19134×104 A - B = 0.12345×104 - 0.6789×103 = (0.12345 - 0.06789) × 104 = 0.05556×104 = 0.5556×103

제 4 장 수치 연산 곱셈과 나눗셈 가수의 정렬 불필요 곱셈과 나눗셈 알고리즘 예 (1) 가수가 0인지 여부를 검사 곱셈 : 지수 부분  덧셈, 가수부분  곱셈 나눗셈 : 지수 부분  뺄셈, 가수 부분  나눗셈 곱셈과 나눗셈 알고리즘 예 제수가 0이면 에러, 피제수가 0이면 몫은 0 (1) 가수가 0인지 여부를 검사 (2) 지수를 더한다. (3) 가수를 곱한다. (4) 결과를 정규화 한다. (1) 0인지 여부를 검사 (2) 지수의 뺄셈을 한다. (3) 가수의 나눗셈을 한다. (4) 결과를 정규화 한다. A=0.123×105 B=0.3×10-4 지수부 : 5 + (-4) = 1 가수부 0.123 × 0.3 = 0.0369 A × B = (0.123×105 ) × (0.3×10-4 ) = 0.0369×101 = 0.369 지수부 5 - (-4) = 9 가수부 0.123 ÷ 0.3 = 0.41 A / B = (0.123×105 ) / (0.3×10-4 ) = 0.41×109

제 4 장 비수치 연산 비수치 연산 논리 연산 OR SET 연산 논리 연산과 문자 데이터 처리 연산, 부울 연산을 기반으로 함 기본 논리연산 : AND, OR, XOR, NOT 논리 연산 SET 연산 B 레지스터의 1에 대응하는 A 레지스터의 비트를 1로 세트 한 레지스터의 일부분을 선택하고자 할 때 사용 결과는 A와 B의 OR 연산 OR ALU : Arithmetic logic unit 산술논리장치 ( )

제 4 장 비수치 연산 논리 연산 MASK 연산 B 레지스터의 0에 대응하는 A 레지스터의 비트를 0으로 클리어 주로 자료의 특정 비트 혹은 문자를 삭제하고자 할 경우 사용 결과는 A와 B의 AND 연산 A레지스터의 하위 2비트를 삭제 할 경우 B레지스터의 마스크의 하위 2비트를 00로 둠

제 4 장 비수치 연산 논리 연산 Selective Complement 연산 B 레지스터의 1에 대응하는 A 레지스터의 비트를 보수로 만듦 레지스터 내의 일부 비트를 보수로 만들 때 사용 결과는 A와 B의 XOR 연산 A레지스터의 상위 2비트를 보수로 만들기 위해 B레지스터의 마스크 의 하위 2비트를 11로 둠

제 4 장 비수치 연산 논리 연산 Selective Clear 연산 B 레지스터의 1에 대응하는 A 레지스터의 비트를 클리어 레지스터 내의 일부 비트를 클리어 시킬 때 사용 결과는 A ← A ∧ B'

제 4 장 비수치 연산 논리 시프트와 로테이트 논리 시프트 서로 이웃한 비트들을 좌측 혹은 우측으로 자리 이동 첨가되는 비트 : ‘0’ 올림수를 포함한 논리 시프트 (a) 논리 좌측 시프트 첨가 되는 비트는 항상 0 (b) 논리 우측 시프트 (a) 올림수와 함께 좌측 시프트 (b) 올림수와 함께 우측 시프트

제 4 장 비수치 연산 논리 시프트의 예 올림수와 함께 오른쪽 시프트 올림수와 함께 왼쪽 시프트 C C x 1100000111000010 0 0 0 x110000011100001 올림수와 함께 왼쪽 시프트 C x 1100000111000010 x 0 1 1000001110000100 오른쪽 시프트 1100000111000010 0 0 0110000011100001 왼쪽 시프트 1100000111000010 1 0 1000001110000100

제 4 장 비수치 연산 로테이트 한쪽 끝에서 밀려나간 비트들이 다른 쪽으로 다시 입력 레지스터 내의 특정 비트를 검사 혹은 문자의 위치 교환 시 시프트에 의한 자료 전송 시 사용 (a) 우측 로테이트 (b) 좌측 로테이트

제 4 장 비수치 연산 로테이트의 예 올림수와 함께 오른쪽 로테이트 C x 1100000111000010 올림수와 함께 왼쪽 로테이트 C x 1100000111000010 1 100000011100010x 오른쪽 로테이트 1100000111000010 0110000011100001 왼쪽 로테이트 1100000111000010 1000001110000101