In: Computer Science
Write an ASM program that evaluates the following expression, using variables: Z = (-A - B) - (-C - D) 1. Declare and initialize the memory variable A to 32-bit signed integer value 543210 and variable B to 16-bit signed integer value -3210. 2. Declare the memory variables C and D and read in their values from the keyboard as 32-bit signed integer value 43210 and 8-bit signed integer values -10, respectively. a. You should display a message asking for the value of the variable, for example: “What is the value of C?” then b. Read in the value of C from the keyboard and then c. Display the value you have read beside (ie, to the right of) the message “What is the value of C?”. Then repeat for variable D in the next line. 3. Variable Z should be declared as a 32-bit signed integer.
4. Display the string “Z = (-A - B) - (-C - D)” alone in a single line. 5. Display the values of all the variables A, B, C, D together in the next line (in the order in which they appear in the expression); each separated by 3 spaces and a semicolumn and 3 spaces again. 6. Display an empty line. 7. Display the final result contained in variable Z, in binary, then in decimal, and then in hexadecimal; each in a separate line.
ANSWER :
In Assembly programming, the variable are all defined by bytes only.
DB – Define Byte (Size – 1 Byte)
DW – Define Word (Size – 2 Byte)
DD – Define Double word (Size – 4 Bytes)
DQ – Define Quad word (Size – 8 Bytes)
DT – Define Ten Bytes (Size – 10 Bytes)
ASM Code
DATA SEGMENT A DB 60 B DB 20 C DB 5 Z DW ? ENDS CODE SEGMENT ASSUME DS:DATA CS:CODE START: MOV AX,DATA MOV DS,AX MOV AH,0 MOV AL,A SUB AL,B MUL C MOV BL,10 DIV BL MUL AX MOV Z,AX MOV AH,4CH INT 21H ENDS END START
Explanation :
In this Assembly Language Programming, A single program is divided into four Segments which are 1. Data Segment, 2. Code Segment, 3. Stack Segment, and 4. Extra Segment. Now, from these one is compulsory i.e. Code Segment if at all you don’t need variable(s) for your program.if you need variable(s) for your program you will need two Segments i.e. Code Segment and Data Segment.
Note :- To see the variable and its value you have to click vars button in the emulator.
Note:- To understand program for sequence in detail Please SEARCH numerically example: ASSEMBLY01, ASSEMBLY02, etc.
( PLEASE VOTE FOR THIS ANSWER )
I THINK IT WILL BE USEFULL TO YOU ........
PLZZZZZZ COMMENT IF YOU HAVE ANY PROBEM I WILL TRY TO SOLVE IT .........
THANK YOU .......