MIPS에서는 1워드 = 4바이트 = 32비트를 기반으로 한다. 32비트의 워드에서는 2^32개의 서로 다른 비트 패턴을 나타낼 수 있다. 첫 번째 비트가 0이라면 양수, 1이라면 음수인 2의 보수 방식을 사용할 수 있고, 이를 사용하면 음수와 양수 모두에서 산술연산을 간단하게 처리할 수 있다. 덧셈 연산과 같은 명령어도 1워드로 나타낸다. 위는 그 예제로, 첫 번째 필드와 마지막 필드는 이 명령어가 add임을 나타내고, 2,3,4번째 필드는 각각 s1 s2 t0를 나타낸다. add 명령어와 같은 구조를 R-Type이라 하며, 6가지의 필드로 나타난다. op: 명령어의 기본 연산 opcode rs : 첫 번째 소스 레지스터의 번호 rt : 두 번째 소스 레지스터의 번호 rd : 세 번째 소스 레지스터의 ..
컴퓨터사이언스
컴퓨터 언어는 명령어(instructions)로 구성돼있으며 각 컴퓨터는 자신만의 명령어 목록(instruction set)으로 구성돼있다. 대표적인 instruction set으로는 arm, intel x86, MIPS 등이 있다. 하드웨어의 기술은 유사한 기본 원리에 기반하고, 모든 하드웨어 기술은 몇 가지 기본 작업을 수행해야하기 때문에 각각의 instructions set은 매우 유사하다. MIPS CPU에는 32개의 레지스터가 있고, 각 레지스터의 크기는 32bit이다. 레지스터는 0~31의 이름을 가지며 각 레지스터는 고유한 이름과 용도를 지닌다. 레지스터를 통해 데이터를 메모리에서 가지고 오는 비용을 줄일 수 있지만, 레지스터의 크기는 한정돼있기에 효율적으로 사용해야한다. g+h를 t0에 저..
하드웨어 위에서 애플리케이션 소프트웨어가 작동할 수 있도록 돕는 역할인 시스템 소프트웨어는 두 가지가 있다. - 운영체제 : 메모리와 저장소를 관리하고, IO 명령을 관리하며 다수의 프로세스/스레드가 충돌하지 않도록 관리함 - 컴파일러 : high-level language로 작성된 프로그램을 하드웨어가 실행할 수 있는 프로그램으로 바꿔줌 * 컴파일러는 building 과정을 통해 object 파일을 생성하고, linking을 하여 실행 파일을 생성함. * 점차 최적화 기술이 발전해서 더욱 효율적인 기계어를 생성할 수 있게 됨. 컴퓨터의 성능을 판단하는 두 가지 지표 - Response time, Execution time (응답시간, 실행시간) * 어떤 작업이 시작부터 완료까지의 걸린 시간 * 이 지표..