Question
FOLLOW THIS FORMAT TO ANSWER THE QUESTION .386 .model flat, stdcall .stack 4096 ExitProcess PROTO, dwExitCode:DWORD .data ; //declare variables here .code main PROC INVOKE
FOLLOW THIS FORMAT TO ANSWER THE QUESTION
.386 .model flat, stdcall .stack 4096
ExitProcess PROTO, dwExitCode:DWORD
.data ; //declare variables here
.code main PROC
INVOKE ExitProcess, 0
main ENDP
END main
Write a 32-bit x86 assembly program that performs the following operations:
Part 1: Swaps content of EBX as follows:
Requirement: Store 'A' in EBX LSB or BL, store 'B' in BH, and then swap BL and BH. You will have to use a temporary storage, you can use EAX (use AL) or any storage you may define.
For example: Content of EBX at init: 00000000, then after storing A and B: EBX = 00004241 ; 4241=ASCII codes in Hex
After swapping: EBX = 00004142 which is BA
Part 2: Create 2 Arrays, Array1 and Array2
-Initialize Array1 as: 1, 2, 3, 4, and Array_2 to 0,0,0,0 (must use the DUP instruction)
Requirement: Copy content of Array 1 to array 2 in a reverse order, i,e:
For example: Array1 = 1, 2, 3, 4 After program run: Array2 = 4, 3, 2, 1, Array _1 is unchanged, content are taken from array1 to array 2
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started