Assume the operating system for our simulator has had new se…
Assume the operating system for our simulator has had new service routines added to it. Consider the following code fragment that requests one of those new service routines: LW a2, %lo(B)(t0) ADDI a0, zero, 33 LOOP: ECALL ADDI a2, a2, -1 Also consider the following partial trap vector table (aka jump table): ADDRESS CONTENTS 0x0000_007C 0x0000_0708 0x0000_0080 0x0000_0528 0x0000_0084 0x0000_0914 0x0000_0088 0x0000_0958 A. What address is used by the code above to access the trap vector table? [trpaddr]B. What is the starting address of the service routine called by the code above? [srvaddr]C. If the symbol table shows LOOP is address 0x0003_1040, what is the return address from the service routine? [retaddr]D. What is the machine code for the instruction the service routine uses to return to the code above? [mc] Enter the addresses and the machine code as 8-digit hex values in RV32I format like the following: 0x0000_01F3
Read DetailsConsider the following table that represents part of the mem…
Consider the following table that represents part of the memory of a 16-bit address space that has an addressability of 2 bytes: ADDRESS CONTENTS … … 0x0C10 0101 0010 0111 1011 0x0C0F 0000 0000 1010 0101 0x0C0E 1010 0101 0000 0011 0x0C0D 0011 1110 1001 0100 0x0C0C 0010 0011 0110 0010 0x0C0B 0000 1100 0000 1101 … … The table above shows the addresses in hex (base 16) and the contents at the corresponding address in binary (base 2). A.) Interpret the contents at address 0x0C0C as two ASCII characters. [ascii] B.) Interpret the contents at the same address as A.) above as an unsigned integer in base 10. [unsigned] C.) Assume address 0x0C0F holds the more significant digits of a value (the high 16 bits) and address 0x0C0E holds the least significant digits of the same value (the low 16 bits). Interpret the resultant value an RV32I instruction to determine the operation.(Enter either ADD, JR, LW, or OTHER if it is not one of the first 3) [instr1] Recall that a memory location can store an address. We call that memory location’s contents a “pointer” since it’s an address that “points” to another memory location. D.) Interpret the contents at address 0x0C0B as a pointer.(Enter hex like the following example: 0x2A3F) [ptrvalue] E.) What are the contents of the memory location that the pointer above is pointing to?(Enter hex like the following example: 0x2A3F) [ptevalue] REFERENCE: Partial Table of Hex to ASCII Characters: 20 sp 30 0 40 @ 50 P 60 ` 70 p 21 ! 31 1 41 A 51 Q 61 a 71 q 22 ” 32 2 42 B 52 R 62 b 72 r 23 # 33 3 43 C 53 S 63 c 73 s 24 $ 34 4 44 D 54 T 64 d 74 t Table of RV32I Opcodes in Hex: ADD 0x33 JR 0x67 LW 0x03
Read DetailsInterpret the following 7 bit binary sequence 1101001 as s…
Interpret the following 7 bit binary sequence 1101001 as specified below: base 10 value for unsigned integer [unsigned] base 10 value for sign magnitude integer [signmag] base 10 value for fixed-point real number with 2 digits to the right of the binary point. [fixpnt] character value for ASCII [ascii] Partial Hex to ASCII Table: 20 sp 30 0 40 @ 50 P 60 ` 70 p 21 ! 31 1 41 A 51 Q 61 a 71 q 22 ” 32 2 42 B 52 R 62 b 72 r 23 # 33 3 43 C 53 S 63 c 73 s 24 $ 34 4 44 D 54 T 64 d 74 t 25 % 35 5 45 E 55 U 65 e 75 u 26 & 36 6 46 F 56 V 66 f 76 v 27 ‘ 37 7 47 G 57 W 67 g 77 w 28 ( 38 8 48 H 58 X 68 h 78 x 29 ) 39 9 49 I 59 Y 69 i 79 y 2A * 3A : 4A J 5A Z 6A j 7A z 2B + 3B ; 4B K 5B [ 6B k 7B { 2C , 3C < 4C L 5C \ 6C l 7C | 2D - 3D = 4D M 5D ] 6D m 7D } 2E . 3E > 4E N 5E ^ 6E n 7E ~ 2F / 3F ? 4F O 5F _ 6F o 7F del
Read DetailsConsider the program below that displays 4 characters. .orig…
Consider the program below that displays 4 characters. .origin 0x0001_0000 START: lui s0, %hi(START) addi s1, s0, %lo(CHARS) lb a1, 3(s1) addi a0, zero, 10 ecall lw t0, %lo(N)(s0) add t1, s1, t0 lb a1, 0(t1) addi a0, zero, 10 ecall addi t4, s0, %lo(N) lw t0, 4(t4) add t1, s1, t0 lb a1, 0(t1) addi a0, zero, 10 ecall addi t5, s0, %lo(DONE) lb a1, 15(t5) addi a0, zero, 10 ecall DONE: halt N: .word 5 .word 7 CHARS: .string “oadewlts” Trace the execution of the program above and answer the following questions. A. What is the first character that this program displays? [ch1]B. What is the second character that this program displays? [ch2]C. What is the third character that this program displays? [ch3]D. What is the fourth character that this program displays? [ch4]
Read DetailsConsider the following IEEE 754 32-bit floating point value:…
Consider the following IEEE 754 32-bit floating point value: 00010101_01001000_00000000_00000000 Enter S, its sign, as either + or -. [sign] Enter E, its exponent part’s value, in base 10 (not including the -127 bias). [exponent] Enter F, its fraction part’s value, in base 10 in the form 0.XXXX where X is a digit. [fraction]
Read DetailsConsider the following IEEE 754 32-bit floating point value:…
Consider the following IEEE 754 32-bit floating point value: 10010110_00010000_00000000_00000000 Enter S, its sign, as either + or -. [sign] Enter E, its exponent part’s value, in base 10 (not including the -127 bias). [exponent] Enter F, its fraction part’s value, in base 10 in the form 0.XXXX where X is a digit. [fraction]
Read Details