Question

4. (20 pts) Write a 68K assembly program to evaluate the following expression for X 2 and Y=5. Also, write the final value of
0 0
Add a comment Improve this question Transcribed image text
Answer #1

a)

.section    __TEXT, __text, regular, pure_instructions

.macosx_version_min 10, 12

.globl    _main

.align    4, 0x90

main:  

.cfi_startproc

## BB#0:

pushq    %rbp

Ltmp0:

    .cfi_def_cfa_offset 16

Ltmp1:

    .cfi_offset %rbp, -16

    movq    %rsp, %rbp

Ltmp2:

    .cfi_def_cfa_register %rbp

    subq    $16, %rsp

    leaq    L_.str(%rip), %rdi

    leaq    _s(%rip), %rsi

    movl    $2000, -4(%rbp)         ## imm = 0x7D0

    movl    $17, -8(%rbp)

    movl    -4(%rbp), %eax

    addl    -8(%rbp), %eax

    movl    %eax, %edx

    movb    $0, %al

    callq    _printf

    xorl    %edx, %edx

    movl    %eax, -12(%rbp)         ## 4-byte Spill

    movl    %edx, %eax

    addq    $16, %rsp

    popq    %rbp

    retq

    .cfi_endproc

Add a comment
Know the answer?
Add Answer to:
4. (20 pts) Write a 68K assembly program to evaluate the following expression for X 2...
Your Answer:

Post as a guest

Your Name:

What's your source?

Earn Coins

Coins can be redeemed for fabulous gifts.

Not the answer you're looking for? Ask your own homework help question. Our experts will answer your question WITHIN MINUTES for Free.
Similar Homework Help Questions
  • 1. (20 pts ) Convert the following 68K assembly language instructions into RTL. Write “invalid” for...

    1. (20 pts ) Convert the following 68K assembly language instructions into RTL. Write “invalid” for incorrect 68k instructions. MOVE 3000, 4000 MOVE #4000, 5000 MOVE #12, (A0) MOVE (A1), (A2) MOVE #4000, D4 MOVE (A0), D3 ADD #13, D4 ADD (A3), 1234 MOVE D3, #4 MOVE (D3), D2

  • Write a java program for the following: Your program reads an infix expression represented by a...

    Write a java program for the following: Your program reads an infix expression represented by a string S from the standard input (the keyboard). Then your program converts the infix expression into a postfix expression P using the algorithm. Next, your program evaluates the postfix expression P to produce a single result R. At last, your program displays the original infix expression S, the corresponding postfix expression P and the final result R on the standard output ( the screen...

  • Using the MARIE computer assembly language, write a program that computes the following expression: z =...

    Using the MARIE computer assembly language, write a program that computes the following expression: z = a * b * c. The computer will read in the input values a, b, and c from the keyboard and the final result (z) have to be displayed. In addition, every time an input value is read in, it must be displayed on the screen. Remember that the instruction set does not have an instruction to execute multiplication. The program must be tested...

  • 1. Write a program to evaluate 3ab - 2bc - 5a + 20ac - 16 Prompt...

    1. Write a program to evaluate 3ab - 2bc - 5a + 20ac - 16 Prompt the user for the values a, b, and c. Try to use a small number of registers. Use the stack to hold intermediate values. Write the final value to the monitor. Hint: please use ‘syscall’ learned in Chapter 22 to read string and print integer and stack operations learned in Chapter 25 to hold intermediate values. You may also look at the example in...

  • 1. [2 points] Write a MIPS assembly language program of the following C function and the...

    1. [2 points] Write a MIPS assembly language program of the following C function and the code to call the function: int leaf_example (int g, h, i, j) { int f; f = (g + h) - (i + j); return f; مهه Arguments g, h, i, and j are passed to the function in registers $a0, $al, Şa2, and $a3, respectively while f in $50 (hence, need to save $50 on stack), and the result is to be stored...

  • Assembly language (MIPS) Let register $8 be x and register $9 be y. Write a program...

    Assembly language (MIPS) Let register $8 be x and register $9 be y. Write a program to evaluate: Z = 3x - 5y+5 Leave the result in register $10. Inspect the register after running the program to check that the program works. Run the program several times, initialize x and y to different values for each run.

  • Write a program to evaluate the arithmetic expression: (25xy - 10x - 6y + 28)/7 Use...

    Write a program to evaluate the arithmetic expression: (25xy - 10x - 6y + 28)/7 Use symbolic addresses x, y, answer, and remainder. Pick two registers for x and y and load them from memory. At the end of the program, store the answer and remainder to memory. Assume that the values are small enough so that all results fit into 32 bits. Since load delays are turned on in SPIM be careful what instructions are placed in the load...

  • Infix Expression Evaluator For this project, write a C program that will evaluate an infix expression. The algorithm REQ...

    Infix Expression Evaluator For this project, write a C program that will evaluate an infix expression. The algorithm REQUIRED for this program will use two stacks, an operator stack and a value stack. Both stacks MUST be implemented using a linked list. For this program, you are to write functions for the linked list stacks with the following names: int isEmpty (stack); void push (stack, data); data top (stack); void pop (stack); // return TRUE if the stack has no...

  • Infix Expression Evaluator For this project, write a C program that will evaluate an infix expression. The algorithm REQ...

    Infix Expression Evaluator For this project, write a C program that will evaluate an infix expression. The algorithm REQUIRED for this program will use two stacks, an operator stack and a value stack. Both stacks MUST be implemented using a linked list. For this program, you are to write functions for the linked list stacks with the following names: int isEmpty (stack); void push (stack, data); data top (stack); void pop (stack); // return TRUE if the stack has no...

  • (1) (50%) Write a C program that takes as input a fully parenthesized, arithmetic expression of...

    (1) (50%) Write a C program that takes as input a fully parenthesized, arithmetic expression of binary operators +, -,*,/, and converts the expression into a binary expression tree. Your program should take input from the command line. The entire expression should be in a character string without any space in it An input string only includes floating numbers in the format of Y.YY, that is, one digit to the left of the decimal point and two digits to the...

ADVERTISEMENT
Free Homework Help App
Download From Google Play
Scan Your Homework
to Get Instant Free Answers
Need Online Homework Help?
Ask a Question
Get Answers For Free
Most questions answered within 3 hours.
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT