[컴퓨터구조] 2. Instructions: Language of the Computer(1) - ISA와 MIPS 아키텍처 소개

2025. 7. 10. 01:28·Computer Science/컴퓨터구조

2. Instructions: Language of the Computer(1) - ISA와 MIPS 아키텍처 소개

이전 챕터에서 하드웨어와 소프트웨어의 인터페이스 역할을 하는 ISA(Instruction Set Architecture)에 대해서 잠깐 다뤘다.

잠깐 복습하자면 CPU마다 ISA가 다르고, CPI는 ISA에 영향을 받는다고 배웠다.

 

현대 PC 프로세서에서 사용하는 ISA는 x86, 모바일 기기의 대부분은 ARM ISA를 사용하고 있다.
이 책에서는 MIPS 아키텍쳐에 대해서 배운다.

 

MIPS는 시스템 프로그래밍 시간에 배운 x86 아키텍쳐와 사실 거의 똑같은 구조를 가지고 있고, 명령어 이름과 문법에서의 일부 차이가 존재한다.

Instruction Set

  • 명령어 세트는 컴퓨터가 실행할 수 있는 명령어의 모음입니다.
  • 각기 다른 컴퓨터는 서로 다른 명령어 세트를 가집니다.
    • 하지만 많은 공통점도 있습니다.
  • 초기 컴퓨터는 매우 단순한 명령어 세트를 가지고 있었습니다.
    • 단순화된 구현
  • 많은 현대 컴퓨터도 단순한 명령어 세트를 가지고 있습니다.

초기 단순한 구조 CISC 구조 RISC 구조(복잡(Complex) 단순(reduced)). MIPS도 RISC 구조

MIPS 명령어 세트

ARM도 MIPS 구조를 많이 참조해서 만들어진 아키텍쳐이고, MIPS 아키텍쳐는 현재 임베디드 쪽에서 사용되고 책에서 말하고 있는데, 아마 거의 안쓰일거긴 합니다.

  • 이 책 전체에서 예시로 사용됩니다.
  • Stanford MIPS는 MIPS Technologies에 의해 상용화되었습니다 (www.mips.com).
  • 많은 현대 ISA(명령어 집합 아키텍처)와 유사합니다.
  • MIPS 명령어는 임베디드 코어 시장에서 큰 비중을 차지합니다.
    • 소비자 가전제품, 네트워크/스토리지 장비, 카메라, 프린터 등에서 응용됩니다.
      • TMI) 예전에 소니에서 많이 썼다

다음 챕터에서는 MIPS 기본 연산 및 피연산자에 대해 알아보겠다.

'Computer Science > 컴퓨터구조' 카테고리의 다른 글

[컴퓨터구조] 2. Instructions: Language of the Computer(5) - 논리 및 제어 흐름 명령어  (0) 2025.07.10
[컴퓨터구조] 2. Instructions: Language of the Computer(4) - MIPS 명령어 형식 (Instruction Formats)  (0) 2025.07.10
[컴퓨터구조] 2. Instructions: Language of the Computer(3) - 컴퓨터 내부의 데이터 표현  (0) 2025.07.10
[컴퓨터구조] 2. Instructions: Language of the Computer(2) - MIPS 기본 연산 및 피연산자  (0) 2025.07.10
[컴퓨터 구조] 01. Computer Abstractions and Technology  (0) 2024.10.07
'Computer Science/컴퓨터구조' 카테고리의 다른 글
  • [컴퓨터구조] 2. Instructions: Language of the Computer(4) - MIPS 명령어 형식 (Instruction Formats)
  • [컴퓨터구조] 2. Instructions: Language of the Computer(3) - 컴퓨터 내부의 데이터 표현
  • [컴퓨터구조] 2. Instructions: Language of the Computer(2) - MIPS 기본 연산 및 피연산자
  • [컴퓨터 구조] 01. Computer Abstractions and Technology
lumana
lumana
배움을 나누는 공간 https://github.com/bebeis
  • lumana
    Brute force Study
    lumana
  • 전체
    오늘
    어제
    • 분류 전체보기 (462)
      • 개발 일지 (0)
        • Performance (0)
        • TroubleShooting (0)
        • Refactoring (0)
        • Code Style, Convetion (0)
        • Architecture (0)
      • Software Engineering (36)
        • Test (8)
        • 이론 (18)
        • Clean Code (10)
      • Java (72)
        • Basic (5)
        • Core (21)
        • Collection (7)
        • 멀티스레드&동시성 (13)
        • IO, Network (8)
        • Reflection, Annotation (3)
        • Modern Java(8~) (13)
        • JVM (2)
      • Spring (53)
        • Framework (12)
        • MVC (23)
        • Transaction (3)
        • AOP (11)
        • Boot (0)
        • AI (0)
      • DB Access (16)
        • Jdbc (1)
        • JdbcTemplate (0)
        • JPA (14)
        • Spring Data JPA (0)
        • QueryDSL (0)
      • Computer Science (130)
        • Data Structure (27)
        • OS (14)
        • Database (10)
        • Network (21)
        • 컴퓨터구조 (6)
        • 시스템 프로그래밍 (23)
        • Algorithm (29)
      • HTTP (8)
      • Infra (1)
        • Docker (1)
      • 프로그래밍언어론 (15)
      • Programming Language(Sub) (76)
        • Kotlin (0)
        • Python (25)
        • C++ (51)
        • JavaScript (0)
      • FE (11)
        • HTML (1)
        • CSS (9)
        • React (0)
        • Application (1)
      • Unix_Linux (0)
        • Common (0)
      • PS (13)
        • BOJ (7)
        • Tip (3)
        • 프로그래머스 (0)
        • CodeForce (0)
      • Book Review (4)
      • Math (3)
        • Linear Algebra (3)
      • AI (7)
        • DL (0)
        • ML (0)
        • DA (0)
        • Concepts (7)
      • 프리코스 (4)
      • Project Review (6)
      • LegacyPosts (11)
      • 모니터 (0)
      • Diary (0)
  • 블로그 메뉴

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

  • 공지사항

  • 인기 글

  • 태그

  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
lumana
[컴퓨터구조] 2. Instructions: Language of the Computer(1) - ISA와 MIPS 아키텍처 소개
상단으로

티스토리툴바