Cs39-lab6write an assembly language program to convert the


Part -1:

CS39-Lab6

1- Write the example that we did in last lecture to copy one array to another array (with no subroutines). Show the result in memory. This code is shown below.

76_fig.jpg

Note that there are documents in Angel to show how you can edit and run a program in assembly language.

2- Write a procedure to find the sum of 5 numbers stored in an array. Save the address of the array in %ESI, save the value 5 in %ECX and then call the procedure.

3- Define an array of type integer and have 5 integer values in that array.

4- Write a program to use a loop to find the sum of the values in an array. Then write if statement to see if the sum is equal to 35. If so, display on the monitor that the sum is equal to 35. Otherwise display sum is not equal to 35.

Part -2:

Define an array of type integer and have 5 integer values in that array.

Write a program to use a loop to find the sum of the values in an array. Then write if statement to see if the sum is equal to 35. If so, display on the monitor that the sum is equal to 35. Otherwise display sum is not equal to 35.

Part -3:

1- The following values are placed in EAX, EBX and ECX. Describe the values of each of the following after the execution of the given instructions.
    EAX = 0x456789AB
    EBX = 0xFFFF0000
    ECX = 0x0000FFFF
ADDL %EBX, %EAX CARRY=_______ZERO=_________OVERFLOW=_______
ADDL %EBX, %ECX CARRY=_______ZERO=_________OVERFLOW=_______
ADDL $0x1, %EBX CARRY=_______ZERO=_________OVERFLOW=_______

2- Given that %EAX is 0xEE7F, show the values:

MOVSBL       %AL, %EBX

%EBX=

 

MOVSWL     %AX, %ECX

%ECX=

 

MOVZBL       %AL, %EDX

%EDX=

 

3- What does CPU do when it executes the following instructions? Explain in terms of the registers that will change in this process.

a) JNZ BACK

b) PUSHL %EAX

4- Write an assembly language that uses a loop to perform incl %EAX five times.

5- Assume the value for the following registers are given:
ESP = 4000
EAX = 0x168
EBX = 0xC73

What will be the stack value and ESP value after the following instructions are executed?
PUSH %EAX
PUSH %EBX

ESP Register

Memory content

0x3FF7

 

0x3FF8

 

0x3FF9

 

0x3FFA

 

0x3FFB

 

0x3FFC

 

0x3FFD

 

0x3FFE

 

0x3FFF

 

0x4000

XXXXXX

6- Assume a floating point system has 6 bits for exponent and 9 bits for fraction and 1 bit for the sign of the number. How is -6.75 represented in this machine using normalized form?
HEX= E= M= V= FRACTION=

Part -4:

1- Write an assembly language program to convert the following string to uppercase using string instructions lodsb and stosb.
String to be converted: This is number 1234.

2- Write two assembly language programs one using regular instructions (not string instructions) and one using string instructions. The program should copy the string in problem-1 to another location and then compare the original and copied string to see if they are the same.

3- Design a voting system such that it outputs what majority of three say. The three inputs are A, B and C. The output is called result. Write the truth table and then draw the circuit using AND, OR and NOT gates. Truth table is the table that has all the combination of zeros and 1s for all the inputs.

Request for Solution File

Ask an Expert for Answer!!
Computer Engineering: Cs39-lab6write an assembly language program to convert the
Reference No:- TGS01395368

Expected delivery within 24 Hours