Question: Problem 2: Conditional Processing (35%) Convert each of the following assembly codes to a high-level code construct: if-then, if-else, while loop, or a combination of

 Problem 2: Conditional Processing (35%) Convert each of the following assemblycodes to a high-level code construct: if-then, if-else, while loop, or a

Problem 2: Conditional Processing (35%) Convert each of the following assembly codes to a high-level code construct: if-then, if-else, while loop, or a combination of them. You will find the variables that you can use in your answers beside each code. You can also use literal numbers (constants) whenever it is applicable. a. You can use x and y as variables in your code. .data x DWORD ? y DWORD ? .code main PROC moveax, cmp eax, y jae L1 sub eax, Y mov X, eax jmp EXIT L1: add eax, y inc eax mov X, eax EXIT: main endp end main b. You can use vi, x, cx, dx as variables in your code. .data v1 WORD ? x WORD ? . code main PROC cmp vi, cx jge L1 cmpcx, dx jl L2 Ll: mov x, 1 jmp next L2: mov x, 2 next: main endp end main C. You can use v1 and v2 as variables in your code. v2 eax .data v1 DWORD ? DWORD ? .code main PROC xor eax, xor ebx, ebx start: cmp eax, vi jge lend add ebx, eax add eax, 3 jmp start lend: mov v2, ebx main endp end main d. You can use ecx, eax and sum as variables in your code. Think of what the instruction "and eax, 1b" means? .data sum DWORD ? .code main PROC xor ebx, ebx mov ecx, 80h start: moveax, ecx and eax, lb test eax, eax jz NO add ebx, ecx NO: dec ecx jnz start lend: mov sum, ebx main endp end main

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!