Immediate Operands
이 부분은 아직 잘 이해를 못 했다. 즉시 계산인가? -> 상수를 레지스터에 따로 넣지 않고 바로 계산하는 것을 Immediate Operands 라고 한다.
Constant data specified in an instruction
addi 키워드 사용 (빼기는 없음)
Ex) addi $s3, $s3, 4 // s3 = s3 + 4
- MIPS $0은 상수 0을 값으로 갖는다. 너무 자주 쓰여서 정의해놓음. $0에는 값을 덮어쓸 수 없다.
Ex) add $t2, $s1, $zero // t2 = s1 값 이동을 addi로 구현 가능하다. (근데 여기 addi 아닌가 싶다)
Unsigned Binary Integers
Range는 0부터 2^n -1
8bits -> 0 ~ 255
16bits -> 0 ~ 65535
32bits -> 0 ~ 4294967295
(8, 16bits는 외우라고 하심)
그래프는 필기 참조
How to represent negative numbers?
1. sign & magnitude :
8bit 기준으로 했을 때 앞의 1bit를 부호 표시 부분으로 남기고 7bits만 사용하는 방법
앞 부분이 1이면 음수, 0이면 양수
범위는 -127 ~ 127
* 안 쓰는 이유
- 0은 00000000인데, 10000000은 -0이다. 그러나 -0이라는 것은 수학에 존재하지 않는다.
- -5와 5를 더했을 때 -10이 나온다. (계산이 잘 안 됨)
2. 1's complement
양수의 모든 bit를 거꾸로 뒤집는다.
* 안 쓰는 이유
- 1번과 같은 이유 (0 관련)
- -5와 5를 더했을 때 -0이 나옴
3. 2's complement : 모든 컴퓨터가 사용
양수의 모든 bit를 거꾸로 뒤집고 1을 더한다.
문제 없음!
'School Lecture Study > Computer Architecture' 카테고리의 다른 글
Simple DataPath (0) | 2021.12.16 |
---|---|
MIPS Instructions (0) | 2021.12.10 |
[5-2] Division (0) | 2021.10.21 |
[5-1] Overflow / Multiplication (0) | 2021.10.18 |
[3-2] Arithmetic Operations in MIPS (0) | 2021.10.01 |