티스토리 뷰
기본적인 논리 연산들
논리 연산을 위한 하드웨어 모듈
하드웨어의 구성
입력 비트들은 모든 논리 게이트들을 통과
출력 선택 신호들에 의하여 멀티플렉서의 네 입력들 중의 하나를 출력
N-비트 논리 연산장치
N-비트 데이터들을 위한 논리 연산장치
기본 논리 모듈들을 병렬로 접속
4-비트 논리 연산장치
AND 연산 / OR 연산
AND 연산 : 두 데이터 단어들의 대응되는 비트들 간에 AND 연산을 수행
A = 1 0 1 1 0 1 0 1
B = 0 0 1 1 1 0 1 1
-------------------
0 0 1 1 0 0 0 1 (연산 결과)
OR 연산 : 두 데이터 단어들의 대응되는 비트들 간에 OR 연산을 수행
A = 1 0 0 1 0 1 0 1
B = 0 0 1 1 1 0 1 1
-------------------
1 0 1 1 1 1 1 1 (연산 결과)
XOR 연산 / NOT 연산
XOR 연산 : 두 데이터 단어들의 대응되는 비트들 간에 exclusive-OR 연산을 수행
A = 1 0 0 1 0 1 0 1
B = 0 0 1 1 1 0 1 1
-------------------
1 0 1 0 1 1 1 0 (연산 결과)
NOT 연산 : 데이터 단어의 모든 비트들을 반전(invert)
A = 1 0 0 1 0 1 0 1 (연산 전)
-------------------------------
0 1 1 0 1 0 1 0 (연산 후)
선택적-세트 연산 / 선택적-보수 연산
선택적-세트(selective-set) 연산 : B 레지스터의 비트들 중에서 1로 세트된 비트들과 같은 위치에 있는 A 레지스터의 비트들을 1로 세트 <XOR 연산 이용>
A = 1 0 0 1 0 0 1 0 (연산 전)
B = 0 0 0 0 1 1 1 1
-------------------
A = 1 0 0 1 1 1 1 1 (연산 후)
선택적-보수(selective-complement) 연산 : B 레지스터의 비트들 중에서 1로 세트된 비트들에 대응되는 A 레지스터의 비트들을 보수로 변환 <XOR 연산 이용>
A = 1 0 0 1 0 1 0 1 (연산 전)
B = 0 0 0 0 1 1 1 1
-------------------
A = 1 0 0 1 1 0 1 0 (연산 후)
마스크 연산
마스크(mask) 연산 : B 레지스터의 비트들 중에서 값이 0인 비트들과 같은 위치에 있는 A 레지스터의 비트들을 0으로 바꾸는(clear하는) 연산 <AND 연산 이용>
용도 : 단어내의 원하는 비트들을 선택적으로 clear하는 데 사용
[예]
A = 1 1 0 1 0 1 0 1 (연산 전)
B = 0 0 0 0 1 1 1 1
-------------------
A = 0 0 0 0 0 1 0 1 (연산 후)
삽입 연산
삽입(insert) 연산 : 새로운 비트 값들을 데이터 단어내의 특정 위치에 삽입
방법 : ① 삽입할 비트 위치들에 대하여 마스크(AND) 연산 수행 ② 새로이 삽입할 비트들과 OR 연산을 수행
A = 1 0 0 1 0 1 0 1
B = 0 0 0 0 1 1 1 1 마스크 (AND 연산)
-------------------
A = 0 0 0 0 0 1 0 1 첫 단계 결과
B = 1 1 1 0 0 0 0 0 삽입 (OR 연산)
-------------------
A = 1 1 1 0 0 1 0 1 최종(삽입) 결과
비교 연산
비교(compare) 연산
A와 B 레지스터의 내용을 비교 exclusive-OR 연산
만약 대응되는 비트들의 값이 같으면, A 레지스터의 해당 비트를 0 세트
만약 서로 다르면, A 레지스터의 해당 비트를 1 세트
모든 비트들이 같으면, Z 플래그를 1 세트
A = 1 1 0 1 0 1 0 1
B = 1 0 0 1 0 1 1 0
-------------------
A = 0 1 0 0 0 0 1 1 (연산 결과)
'It' 카테고리의 다른 글
Spring MVC 5-2 Spring MVC 개요 (0) | 2023.03.08 |
---|---|
Spring MVC 5-3 Spring MVC 적용하기 (0) | 2023.03.07 |
쉬프트(shift) 연산 (0) | 2023.03.05 |
제어 유니트의 기능 (0) | 2023.03.04 |
오라클 열삭제 (0) | 2023.03.03 |