Search

Lecture EX_1 : Midterm

course
last review
2023/04/17
mastery
ranger
progress
not started
date
2023/04/17
4 more properties
Previous chapter

1. IEEE 754 FLOATING NUMBER

IEEE SINGLE PRECISION STANDARD 기반으로 0보다 작은 수 중에서 가장 큰 Floating Point Number을 IEEE FP STANDARD로 표현하시오. 이때 32-bit를 16진수 표기법으로 나타내시오. Biased No = 127, sign field = 1bit, Fraction field = 23bit, Exponent field = 8 bit
Solution

2. MIPS ASSEMBLER : Basic

다음은 C-code를 MIPS assembler로 변환하여 작성된 코드이다. 이때 registers $s1, $s2, $t1, 그리고 $t2는 각각 integer A,B,i 그리고 temp 변수이다. 그리고 C-code에서처럼 $t1의 초기값은 10이라 가정하자.
MIPS 코드에 비어있는 두 칸을 작성하시오.
i = 10; do { B += 2; i = i - 1; }while (i > 0)
C
복사
LOOP: [ #1 ] [ #2 ] addi $t1, $t1, -1 addi $s2, $s2, 2 j LOOP DONE:
Assembly
복사
SOLUTION

3. ????

다음 용어들 중에서 아래 설명을 가장 잘 표현한 것을 선택하시오.
assembler, compiler, debugger, linker, loader, petabyte, terabyte, gigabyte, machine language, MIPS, CPI, operating system, application software, system software, CPU, benchmark, evaluation mark.
a.
A set of programs for lasting the performance :
solution
b.
The stored program that manages the resources of a computer for efficient execution of user programs :
solution
c.
A program that combines independently assembled machine language programs and resolves all undefined labels into an executable file :
solution
d.
The lowest-level software commands that computer hardware can comprehend and execute directly :
solution
e.
2402^{40} bytes :
solution

4. Endian

다음의 주어진 16진수로 표현된 32-bit 값을 Byte-addressable-memory system에 기록을 하고자 한다. 각각 Little-endian과 Big-endian으로 저장할 때 하위 메모리 주소에 기록되는 값부터 순서대로 기록을 하시오. (16진수로 표현하시오)
저장하고자 하는 값 = 0xCD37DEAB
SOLUTION

5.MIPS Assembly : Instruction Type

다음 주어진 C-code를 MIPS assembly로 나타내고자 한다.
A = B - 5;
Assembly
복사
이때, signed integer A, B는 각각 register $10, $11에 할당된다고 가정하자. 명령어 필드를 완성하여 16진수 표현으로 나타내시오.
Instruction
Op(HEX)
Function(HEX)
Ins
Op(HEX)
add
0
20
addi
8
addu
0
21
addiu
9
SOLUTION

6. ???

다음 설명 중 올바르지 않은 것을 모두 고르시오.
1.
Floating-point 연산은 결합 법칙이 성립하여 연산 순서와 상관없이 항상 같은 결과를 만든다.
2.
Integer 연산은 Overflow가 생길 수 있다.
3.
성능 평사에서 MIPS와 CPI만으로도 성능의 높고 낮음을 비교평가할 수 있다.
4.
CISC 컴퓨터와 비교할 경우, 적은 명령어 세트로 구성이 되어있는 RISC 컴퓨터는 프로그램 컴파일시 일반적으로 더 많은 명령어를 가지는 실행파일을 생성하게 되어 상대적으로 계산 성능이 느려진다.

7. MIPS Assembly

다음 중 branch 명령어(beq, bne)를 처리하기 위해 사용되는 MIPS Addressing Mode는
1.
Register Addressing
2.
Base addressing
3.
PC-relative addressing
4.
Immediate addressing

8. PERFORMANCE

다음은 프로세서 성능 평가를 위한 벤치마크 프로그램에 대한 명령어 구성 비율, CPI 그리고 빈도에 대하여 정리한 것이다.
Instruction type
CPI
Frequency
A
1
35
B
2
10
C
3
15
D
10
40
a.
평균 CPI를 구하시오.
SOLUTION
b.
모든 조건이 같은 상태에서 D-type 명령어 처리 과정만 개선하여 프로세서 전체 SpeedUp이 2.5가 되도록 하고자 한다. 개선된 D타입의 CPI를 구하시오.
SOLUTION
c.
프로세서가 2GHz에 동작한다면 개선된 프로세서의 MIPS는 얼마인가?

9. Performance Inhencement

건우가 사용하고 있는 프로세서에는 Floating-Point연산 모듈과 Integer 연산 모듈로 되어있다. 계산 프로그램을 조사해보니 많은 연산이 FP 오퍼레이션으로 이루어져 있고, 건우의 프로세서는 FP계산시간이 전체의 80%를 차지한다.
이를 개선하자.
a.
전체 성능이 4배가 좋아지려면 새로 추가되는 FP 연산 모듈의 성능은 기존에 비교하여 몇배가 좋아져야하는가?
SOLUTION
b.
만약 더 좋은 FP 모듈을 사용하는 프로세서로 구입할 경우 달성할 수 있는 전체 성능의 최대 Speedup의 한계는 얼마인가?
SOLUTION

PERSONAL TRAINING

2.
slt → beq, bne로 조건문 변환
3.
벤치마크????, 그리고 바이트 단위 잘 살피기.
4.
MSB와 LSB가 제일 파악하기 힘듦. 엔디언 값의 정렬기준을 잘 기억하자.
5.
R,I,J타입의 포맷 잘 기억하자. 특히 J(8,26), 음수 표현할때 주의!!!!!
6.
이건 다시 봐야겠다.
7.
8.
Speed Up = N배 → 역수 곱해서 Execution Time에 반영해야한다.
a.
2.5배 Speed Up이면, 0.4T가 개선된 시간이다!!!!!
9.
Amdahl’s Law를 반드시 기억할 것.
10.
유효자리수 처리할 때 Round to Nearest Even으로 처리하는 거 연습하

Overall C Sort

void swap(int v[], int k){ int temp; temp = v[k]; v[k] = v[k+1]; v[k+1] = temp; }
C
복사
$a0 = v[], $a1 k
swap: sll $t1, $s1, 2 add $t1, $a0, $t1 lw $t0, 0($t1) lw $t2, 4($t1) sw $t2, 0($t1) sw $t0, 4($t1) jr $ra
Assembly
복사
Next chapter