[혼자 공부하는 컴퓨터구조 + 운영체제] - 명령어의 구조

2023. 4. 16. 22:56·CS

명령어의 구조는

무엇을 대상으로, 무엇을 수행하라 라는 구조로 되어 있음 

연산코드  /   오퍼랜드

연산코드 : 수행할 연산 

오퍼랜드 :  연산에 사용될 데이터 혹은 연산에 사용될 데이터가 저장된 위치 

오퍼랜드가 저장되는 공간인 오퍼랜드필드를 주소필드 라고 부르기도 한다 

 

 

 

 

연산코드

(연산 코드의 종류와 생김새는 CPU마다 다름 / 아래는 공통적인 연산코드 종류임 )

1. 데이터 전송

2. 산술/논리 연산

3. 제어 흐름 변경

4. 입출력 제어

 

 

 

 

 

왜 굳이 메모리의 특정 위치에 명령어의 주소를 저장할까?

주소 명령어에서 표현할 수 있는 데이터 크기가 제한되어 있기 때문 !

 

 

명령어 주소 지정 방식

유효 주소 

연산에 사용할 데이터가 저장된 위치

 

명령어 주소 지정 방식

연산에 사용할 데이터가 저장된 위치를 찾는 방법

유효 주소를 찾는 방법

다양한 명령어 주소 지정 방식들

 

즉시 주소 지정 방식

연산에 사용할 데이터를 오퍼랜드 필드에 직접 명시

가장 간단한 형태의 주소 지정 방식

연산에 사용할 데이터의 크기가 작아질 수 있지만, 다른 방법에 비해 빠름 

 

직접 주소 지정 방식

오퍼랜드 필드에 유효 주소를 직접적으로 명시하는 방법

유효 주소를 표현할 수 있는 크기가 연산 코드만큼 줄어듦

 

간접 주소 지정 방식

오퍼랜드 필드에 유효 주소의 주소를 명시

앞선 주소 지정 방식들에 비해 속도가 느림 (메모리 여러번 뒤적거리니까)

 

레지스터 주소 지정 방식

연산에 사용할 데이터가 저장된 레지스터 명시

메모리에 접근하는 속도보다 레지스터에 접근하는 것이 빠름

 

레지스터 간접 주소 지정 방식

연산에 사용할 데이터를 메모리에 저장

그 주소를 저장한 레지스터를 오퍼핸드 필드에 명시

 

'CS' 카테고리의 다른 글

[혼자 공부하는 컴퓨터구조 + 운영체제] - 레지스터  (0) 2023.04.23
[혼자 공부하는 컴퓨터구조 + 운영체제] - ALU와 제어 장치  (0) 2023.04.16
[혼자 공부하는 컴퓨터구조 + 운영체제] - 소스 코드와 명령어  (0) 2023.04.01
[혼자 공부하는 컴퓨터구조 + 운영체제] - 0과 1로 숫자를 표현하는 방법  (0) 2023.03.28
[혼자 공부하는 컴퓨터구조 + 운영체제] - 컴퓨터 구조 시작하기1  (0) 2023.03.16
'CS' 카테고리의 다른 글
  • [혼자 공부하는 컴퓨터구조 + 운영체제] - 레지스터
  • [혼자 공부하는 컴퓨터구조 + 운영체제] - ALU와 제어 장치
  • [혼자 공부하는 컴퓨터구조 + 운영체제] - 소스 코드와 명령어
  • [혼자 공부하는 컴퓨터구조 + 운영체제] - 0과 1로 숫자를 표현하는 방법
yoozung
yoozung
  • yoozung
    yoozung의 개발블로그
    yoozung
  • 전체
    오늘
    어제
    • 분류 전체보기
      • TIL
      • 알고리즘
      • CS
      • 책
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • 이전블로그(이사중)
  • 공지사항

  • 인기 글

  • 태그

    데이터내보내기
    leetcode175
    알고리즘누적합
    leetcode176
    springdi
    알고리즘이모스
    테이블내보내기
    MySQL
    보호소에서 중성화한 동물
    누적합
    DBeaver
    오블완
    이모스
    jdk설정
    디비버
    프로그래머스
    티스토리챌린지
    imos
    백준23295
    환경설정
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
yoozung
[혼자 공부하는 컴퓨터구조 + 운영체제] - 명령어의 구조
상단으로

티스토리툴바