Computer Architecture Course: 320241 Jacobs University Bremen November 15th, 2013 Dr. Heinrich Stamerjohanns Homework – MIPS Instruction Set Architecture Problem 8.1 MIPS assembler (2 points) Please convert to MIPS assembler. int is_more_than_a_dozen(int a, int b) { if (sum(a, b) > 12) return 1; else return 0; } int sum(int a, int b) { return a + b; } Problem 8.2 MIPS instruction set I (2 points) Please convert to C. $s6 contains the base address of an array. Loop: sll $t1, $s3, 2 add $t1, $t1, $s6 lw $t0, 0($t1) bne $t0, $s5, Exit addi $s3, $s3, 1 j Loop Exit: Problem 8.3 MIPS instruction set II (2 points) Assume that the loop is placed at location 60000 in memory, what is the machine code for the loop given above? Please write out the machine code in two columns, the first as decimal values, the second as a binary number. Please keep in mind that MIPS instructions have byte addresses, so addresses of sequential words differ by 4. bne will jump relative to the following instruction. j does use the full address, but make sure it jumps to words not bytes. Problem 8.4 Bitpattern (2 points) In a Von Neumann architecture, groups of bits have no intrinsic meanings by themselves. The following table shows bit patterns expressed in hexadecimal notation. Please answer the questions below for each bit pattern. x. 0x0C000000 y. 0xC4630000 What decimal number does the bit pattern represent… a) if it is a two’s complement number? b) if it is an unsigned integer? c) if this bit pattern is placed into the Instruction Register, what MIPS instruction would be d) if it is an IEEE 754 floating point number? Problem 8.5 Floating point binary representation (2 points) Please compute the IEEE754 binary representation of the following numbers x. 11 16 y. 16.53125 Please provide the complete calculation, not just a result. For y. you can use the algorithm shown in the example output of a conversion program. How to submit your solutions You can submit your solutions via Grader at as a (scanned) PDF file. You may also bring your homework on a sheet of paper to class on Friday. However, mixed solutions will not be accepted (either submit via Grader or return on paper). If there are problems (but only then), you can submit the programs by sending mail to [email protected] with a subject line that starts with 320241. Please note, that after the deadline it will not be possible to submit solutions. It is useless to send solutions then by mail, because they will not be accepted. This homework is due by Friday, November 22th, 9.45 h