하드웨어: 컴퓨터 물리적 구성 요소ex) 마더보드, 그래픽 카드, cpu소프트웨어시스템 소프트웨어(system software): 하드 웨어 및 응용 프로그램 작업 제어, 조정하는 프로그램ex) os, compiler응용 소프트웨어(application software
정의: mips technologies에서 개발한 risc 기반의 명령어 집합 체계특징risc 방식 중 많이 사용되는 isa임, 다른 것으로는 arm도 있음
기초cpu에 존재데이터 임시 저장메인 메모리보다 빠름 --> 비쌈종류General Purpose RegisterSpecial Purpose Registerpc(program counter): 다음 명령의 주소 holdac(accumulator): 계산 결과 임시 저장i
3 operand
어세블리 코드 직접 구동사용메모장에서 작성 후 .s 로 저장spim에서 로드 가능refresh 통해 매번 레지스터 지우고 시작
정의: operand가 놓인 장소를 어떻게 찾을 것인가장점유저에게 프로그램 다양성을 제공명령 비트 수를 줄여줌용어E.A.(effective address)실제 데이터가 존재하는 주소implied mode특정한 주소 없음ex) push a, add aimmediate m
정의: 어떤 기능에 대하여 구현할 모든 명령어 set을 가져야함다루어야할 부분연산, 논리integer operationadd/subtractincement / decrement --> 1증가 / 1감소logical operationbitwise andbitwise or
컴퓨터 초기에 사용된 cpu 설계 방식많은 명령어 수 가짐다양한 addressing mode 2,3번으로 인해 하드웨어 복잡 -> 느려짐명령어 길이 다양 -> 일관된 방식 사용x메모리에 operand 다룸 -> 메모리와 레지스터를 이동하므로 시간 커짐문제점clock c
간단한 cpu 처리과정 구현기계어 기능fetch: 메모리부너 정보 가져옴decode: 해독excute: 실행
성능 최대, 비용 최소, 디자인 시간(컴파일러와 하드웨어) 줄임 --> 하드웨어를 간소화!32X32 bits 일반 레지스터32X32 bits floating point 레지스터double의 경우 16X64bits로 레지스터 이용 가능HI(32bits), LO(32bit
종류arithmetic, logicdata transfercontrolloadlw $s1, 8($s0): $s1(dst) <- memory$s0+8storesw $s1, 12($s0): memory$s0+12 <- s1(source)conditional br
formatr format: 가장 기본 포맷, 대부분이 r 포맷임rs, rt, rd 5bit인 이유: 레지스터 개수가 32(어느 레지스터에 넣을지 결정)shamt 5bit: 레지스터 1개 32bit(레지스터 1개의 32bit에 하나씩 대응)i format: 상수값 사용
jal, jr함수 내 레지스터 부족한 경우해결책: stack 사용(메인 메모리)$t0 ~ $t9: 보존x$s0 ~ $s7: 보존ot레지스터의 경우는 임시로 사용한다고 생각하여 굳이 보존하지 않고, s레지스터는 계속 사용한다고 생각하여 값을 저장 후 복원함 --> t레지
용어elapsed time: 전체시간, io 등 포함cpu time: 순수 작업 시간, io 등 제외performancecpu time용어clock period(clock cycle time): 한 clock에 걸리는 시간(주기)clock frequency(rate):
alu
간단한 구현
cpu/메모리와 외부 장치간 정보를 주고 받는 것특징behavoir: input(Read only), output(writre only), storagepartner: 인간, 기계data rate: 주어진 시간 내에 옮겨진 데이터의 량i/o bus connectionc
기본 5단계 ![](ht