2) Write ARM Thumb-2 assembly code for the following using IT Block as we learned in class.
if (r3 > r4)
r7 = r4 – r3;
else
r7 = r3 – r4;
The solution is provided below with explanations.


Thank you. Happy to help you.
2) Write ARM Thumb-2 assembly code for the following using IT Block as we learned in class. if (r...
Question 2 ARM Assembly Language (25 marks) An ARM instruction set summary is provided at the end of this paper. (5 marks) Explain the difference between eor and eors instruction. Use an example to show why both forms are useful. а. b. (5 marks) Explain using an example what the "Idr r3, [r7,#4]" instruction does. c. (10 marks) The following is the assembly language generated by a C compile type mystery, %function mystery: args 0, pretend = 0, frame =...
Arm Assembly Programming : Total of 3 assembly files using VisUAL arm emulator ( save as .S file) 1. Write a program to solve the below expression: Z= (a << 2) | (c & 15) 2. Write a program that adds the 32-bit two’s complement representations of −149 and 5 . Place the result in register r7. Submit your code with the resulting value in register r7 commented. 3. Write a program to mask first 9 bits of a...
The table shows the PPT functions we learned in class. You will try to get the sum of 0 to N. First, modify the following function. And translate the C code to ARM assembly code. Describe the process by substituting 3 for the N value. (You have to briefly write comment at each lines in your ARM code!!!) int function (int num) if (num< 1) return 1; else return num * function(num - 1);
For the single-cycle ARM Thumb datapath discussed in class, what is the decimal value of the lower register file read address input (the one after the mux) while executing the instruction ANDS R3, R4? The table below contains the hexadecimal values of some registers before the instruction is executed. R2 18 R3 69 R4 99
For the single-cycle ARM Thumb datapath discussed in class, what is the decimal value of lower input to the ALU (the one after the mux) while executing the instruction LDR R4, [R2, #4]? The table below contains the decimal values of some registers before the instruction is executed. R2 309 R3 733 R4 1,054 PC 32,077
Section B - ARM Assembly Language (25 marks) An ARM instruction set summary is provided at the end of this paper 1. (5 marks) Consider the following assembly instruction STMFD r13!, (r5-6} Before executing this instruction, registers hold the following values: Register Value Register r9 Value r4 0x00400040 0x00000000 r5 r10 0x11223344 0x00800080 r6 0x55667788 r11 0x10001000 r7 0x99aabbcc r12 0x20002000 r8 exddeeff00 r13 ex40004000 What memory locations are affected after executing the above instruction? In a table, with a...
I need help with ARM assembly program :
Using the following code as basic :
1 ) Write a program code that is able to calculate the following
: Result = A + ( B * C ) - D
Place the result as the return value so you can print it
afterwards in the command prompt.
2) This time, use MLA instruction to
reduce the number of instructions in question 1.
Place the result as the return value so...
Consider the following assembly language code:I0: add $R4,$R1,$R0 //ADD R4 = R1 + R0;I1: lw $R1,100($R3) //LDW R1 = MEM[R3 + 100];I2: lw $R9,4,($R1) // LDW R9 = MEM[R1 + 4];I3: add $R3,$R4,$R9 //ADD R3 = R4 + R9;I4: lw $R1,0($R3) //LDW R1 = MEM[R3 + 0];I5: sub $R3,$R1,$R4 //SUB R3 = R1 - R4;I6: and $R9,$R9,$R7 //AND R9 = R9 & R7;I7: sw $R2,100($R4) //STW MEM[R4 + 100] = R2;I8: and $R4,$R2,$R1 //AND R4 = R2 & R1;I9: add...
Note: All assembly code should be well commented-similar level of detail to samples. 7. Write ARM code that decodes the immediate value in an instruction-takes the last 12 bits and turns it into the value it represents a. Start by loading r1 with the value E3A01CFA (machine code for a move immediate into register) b. Isolate bits 0-7 (the rightmost 8 bits) the 8-bit binary number - into r2 c. Isolate bits 8-11 d. Multiply r3 by 2 to get...
2. a)Write the ARM ALP conditional code snippet for the following statements written in C-language. Assume R1 to Rn as06 variables Let R1, R2, R3 contain the starting addresses of arrays X, Y and Z respectively Use Register R4 for variable i. Display appropriate messages. While (i+10) else Z[i] XiYi; b)i Write a program to display a message "This is an examination Question" on the screen using 06 a function sub program Note the following Address of the string to...