Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

I need to create an assembly program that usues irvine 32 so i need to create 2

ID: 3676959 • Letter: I

Question

I need to create an assembly program that usues irvine 32 so i need to create 2 arrays that adds and subtracts element by element in the array. Each array needs to be 8 numbers long that the user will input the numbers for. Do not hard code the number eight. Use SIZEOF, LENGTHOF and other techniques to make your program adaptable to any array size. Print out both arrays in two columns, side by side, with a few spaces between them. Each array has to be in a different color other than the screen default which is lightGray.

Explanation / Answer

; This program takes an integer array and reverses it's elements, using a loop, the SIZE, TYPE and LENGTHOF ; operators. TITLE lab4 (lab4.asm) INCLUDE Irvine32.inc .data arr DWORD 1h, 2h, 3h, 4h, 5h, 6h ; Array of integers with 6 elements. len DWORD LENGTHOF arr / 2 ; The length of the array divided by 2. ;rng DWORD LENGTHOF arr ; The complete length of the array. .code main PROC mov eax, len ; Moves the length (divided by 2) into the eax register. mov ebx, len ; Sets the ebx register to 0 to serve as the counter. mov ecx, len ; Loads the length of the array into the ecx register. mov edx, len ; Sets a counter that starts at the end of the array. dec edx ; Start of the loop L1: mov eax, arr[esi + (TYPE arr * ebx)] ; Assigns to eax the value in the current beginning counter. xchg eax, arr[esi + (TYPE arr * edx) ] ; Swaps the value in eax with the value at the end counter. mov arr[esi + (TYPE arr * ebx)], eax ; Assigns the current beginning counter the value in eax. dec edx ; Decrements the end counter by 1. inc ebx ; Increments the beginning counter by 1. loop L1 ; end of the loop mov ecx, LENGTHOF arr mov ebx, 0 ; Start of loop L2: ; Loop that runs through the array to check and make sure mov eax, arr[esi + (TYPE arr * ebx)] ; the elements are reversed. inc ebx call DumpRegs loop L2 ; End of loop exit main ENDP END main

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote