티스토리 뷰

ALU
레지스터를 통해 피연산자를 받아들이고, 제어장치로부터 수행할 연산을 알려주는 제어 신호를 받아들입니다.
결괏값을 레지스터에 저장하는 이유?
메모리에 접근해서 가져오는 속도 보다 레지스터에 접근해서 가져오는 속도가 빠르기 때문에
플래그(Flag)
이진법: 0과 1로 숫자 표현하기
부호 플래그: 양수, 음수를 나타냄
제로 플래그 : 0을 나타냄
캐리 플래그 : 결괏값이 올림수나빌림수가 발생했는지 나타냄
오버플로우 플래그: 오버플로우 발생했는지 나타냄
인터럽트 플래그: 인터럽트가 가능한지를 나타냄
슈퍼바이저 플래그: 커널모드로 실행중인지, 사용자 모드로 실행 중인지를 나타냄
제로 플래그에 1이면 결과 값이 0이구나 라는걸 나타냄
부호플래그에 1일 경우 결과는 음수, 0이면 양수를 나타냄
제어장치
제어신호를 내보내고, 명령어를 해석하는 부품
제어신호는 컴퓨터 부품들을 관리하고, 작동시키기 위한 일종의 전기신호
제어장치가 받아들이는 정보(IN)
클럭(Clock)
컴퓨터의 모든 부품을 일사불란하게 움직일 수 있게 하는 시간단위
클럭신호단위에 맞춰서 명령어들이 수행된다.
명령어 레지스터
해석할 명령어를 받아들이고 해석한 뒤, 제어 신호를 발생시켜 컴퓨터 부품들에 수행해야 할 내용을 알려줌3. 플래그
제어신호
시스템 버스 , 그중에서 제어 버스로 전달된 제어 신호를 받아들입니다.
제어버스를 통해 외부로부터 전달된 제어 신호를 받아들이기도 합니다.
제어장치가 내보내는 정보(OUT)
크게 2가지로 나뉜다!
CPU외부에 전달하는 제어신호 / CPU 내부에 전달하는 제어 신호
외부:
메모리에 저장된 값을 읽거나 메모리에 새로운 값을 쓰고 싶다면 메모리로 제어 신호를 내보냄
입출력장치의 값을 읽거나 입출력장치에 새로운 값을 쓰고 싶을때는 입출력장치로 제어 신호보냄
내부:
ALU에 전달하는 제어신호 : ALU에는 수행할 연산을 지시하기 위해,
**레지스터에 전달하는 신호:**레지스터에는 레지스터간에 데이터를 이동시키거나, 레지스터에 명령어를 해석하기 위해 내보냄
레지스터
반드시 알아야 할 레지스터 8가지
프로그램 카운터
메모리에서 가져올 명령어의 주소(메모리에서 읽어 들일 명령어의 주소)
순차적인 흐름이 끊기는 경우
- 특정 메모리 주소로 실행 흐름을 이동하는 명령어 실행하는 경우
- 인터럽트 발생시
- ETC
명령어 레지스터
해석할 명령어(방금 메모리에서 읽어 들인 명령어)
CPU가 정보를 데이터 버스로 주고 받을때 거치는 레지스터
메모리 주소 레지스터
메모리의 주소를 저장
메모리 버퍼 레지스터
메모리와 주고 받을 값(데이터 와 명령어)
플래그 레지스터
연산 결과 또는 CPU 상태에 대한 부가적인 정보
범용 레지스터
다양하고 일반적인 상황에서 자유롭게 사용
스택 포인터
스택의 꼭대기를 가리키는 레지스터
스택 주소 지정 방식:스택 과 스택 포인터를 이용한 주소 지정 방식
베이스 레지스터
- 변위 주소 지정 방식: 오퍼랜드 필드의 값(변위) 과 특정 레지스터의 값을 더하여 유효 주소 얻기 2가지로나뉨
- 상대주소 지정 방식: 오퍼랜드 필드의 값(변위) 과 프로그램 카운터의 값을 더하여 유효 얻기
- 베이스 레지스터 주소 지정 방식: 오퍼랜드 필드의 값(변위)과 베이스 레지스터의 값을 더하여 유효 주소 얻기
작동순서
1.프로그램 카운터에서 메모리에서 가져올 명령어의 주소 받기: 1000번지
2.메모리 주소 레지스터가 1000번지가 복사가 됨
3.메모리 버퍼 레지스터 메모리와 받을 값을 세팅: 값1101
4.프로그램 카운터는 하나 증가해서 다음으로 실행할 주소 세팅
5.제어장치가 해석해야될 명령어 레지스터에 1101 담김
- Total
- Today
- Yesterday
- 패스트캠퍼스
- HTTP #메타코딩
- MegabyteSchool
- 자료구조 #CS공부
- 스프링 # 스프링부트 #서버와클라이언트 # 공부기록
- application.yml 설정
- Spring Boot 공부
- spring #springboot #스프링부트공부 #스프링부트실습 #메타코딩유튜브
- 자료구조
- JSON
- 메가바이트스쿨
- mysql #인텔리제이랑 연결 #다시설치 및 재실행
- JSON #json #개발자필수지식
- 알고리즘 복잡도 #알고리즘 공부 #이것이코딩테스트다 #이코테 #나동빈
- 빌드 오류 #java버전오류
- git 개념 #spring전 git #간단한 개념만
- 국비지원
- 내일배움카드
- JSON에 대해서 알아보기
- 개발자취업부트캠프
- 국비지원교육
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |