일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 인덱스의 개념과 장단점
- 운영체제
- 컴퓨터 구조
- 첫 프로그래밍
- 컴퓨터 활용 능력 1급
- 이것이 오라클이다
- 데이터모델링
- 열거형
- 혼자 공부하는 네트워크
- 혼자 공부하는 컴퓨터 구조 및 운영체제
- sqld
- 친절한 SQL 튜닝
- 클러스터형 인덱스와 보조 인덱스
- mysql 설치 방법과 정상 작동 확인하기
- 컴퓨터 활용 능력
- 혼자 공부하는 컴퓨터 구조 + 운영체제
- 명령 프롬프트
- 뷰
- 2025-02-13
- oracle
- INSERT
- 데이터 모델링
- 웹 디자인 기능사
- delete
- youtube review
- 혼자 공부하는 SQL
- gitkraken을 통한 프로젝트 올리기
- github에 새 리포지토리 추가하기
- 리눅스 마스터 2급
- Update
- Today
- Total
코딩 브이로그
명령어의 구조 본문
기계어, 어셈블리어
저급 언어로 변환
명령어: "학생들, 다음 주까지 과제를 제출하세요."
명령어의 구조
- 연산코드: 수행할 연산
- 오퍼랜드: 연산에 사용될 데이터 혹은 연산에 사용될 데이터가 저장된 위치
오퍼랜드
- 연산에 사용될 데이터
- 연산에 사용될 데이터가 저장된 위치 (주소필드)
연산코드
- 데이터 전송
MOVE: 데이터를 옮겨라
STORE: 메모리에 저장하라
LOAD: 메모리에서 CPU로 데이터를 가져와라
PUSH: 스택에 데이터를 저장하라
POP: 스택의 최상단 데이터를 가져와라
- 산술/논리 연산
ADD / SUBTRACT / MULTIPLY / DIVIDE : 덧셈 / 뺄셈 / 곱셈 / 나눗셈을 수행하라
INCREMENT / DECREMENT : 오퍼랜드에 1을 더하라 / 오퍼랜드에 1을 빼라
AND / OR / NOT: AND / OR / NOT : 연산을 수행하라
COMPARE : 두 개의 숫자 또는 TRUE / FALSE 값을 비교하라
- 제어 흐름 변경
JUMP : 특정 주소로 실행 순서를 옮겨라
CONDITIONAL JUMP : 조건에 부합할 때 특정 주소로 실행 순서를 옮겨라
HALT : 프로그램의 실행을 멈춰라
CALL : 되돌아올 주소를 저장한 채 특정 주소로 실행 순서를 옮겨라
RETURN : CALL을 호출할 때 저장했던 주소로 돌아가라
- 입출력 제어
READ(INPUT) : 특정 입출력 장치로부터 데이터를 읽어라
WRITE(OUTPUT) : 특정 입출력 장치로 데이터를 써라
START IO : 입출력 장치를 시작하라
TEST IO : 입출력 장치의 상태를 확인하라
명령어 주소 지정 방식
- 유효 주소 (effective address) : 연산에 사용할 데이터가 저장된 위치
- 명령어 주소 지정 방식 (addressing modes) :
연산에 사용할 데이터가 저장된 위치를 찾는 방법
유효 주소를 찾는 방법
다양한 명령어 주소 지정 방식들
- 즉시 주소 지정 방식 (immediate addressing mode)
연산에 사용할 데이터를 오퍼랜드 필드에 직접 명시
가장 간단한 형태의 주소 지정 방식
연산에 사용할 데이터의 크기가 작아질 수 있지만, 빠름
[연산 코드][연산에 사용할 데이터]
- 직접 주소 지정 방식 (direct addressing mode)
오퍼랜드 필드에 유효 주소 직접적으로 명시
유효 주소를 표현할 수 있는 크기가 연산 코드만큼 줄어듦
- 간접 주소 지정 방식 (indirect addressing mode)
오퍼랜드 필드에 유효 주소의 주소를 명시
앞선 주소 지정 방식들에 비해 속도가 느림
- 레지스터 주소 지정 방식 (register addressing mode)
연산에 사용할 데이터가 저장된 레지스터 명시
메모리에 접근하는 속도보다 레지스터에 접근하는 것이 빠름
- 레지스터 간접 주소 지정 방식 (register indirect addressing mode)
연산에 사용할 데이터를 메모리에 저장
그 주소를 저장한 레지스터를 오퍼랜드 필드에 명시
'혼자 공부하는 컴퓨터 구조 및 운영체제 (복습)' 카테고리의 다른 글
CPU의 내부 구성 - ALU와 제어장치 (6) | 2024.10.10 |
---|---|
C 언어의 컴파일 과정 (7) | 2024.10.10 |
소스 코드와 명령어 (7) | 2024.10.10 |
0과 1로 문자를 표현하는 방법 (10) | 2024.10.10 |
0과 1로 숫자를 표현하는 방법 (4) | 2024.10.10 |