Answered! subject… assembly language,, If you know Assembly language,,,x86,,,,,,,,asm ,,, then answer please,,,,…

subject… assembly language,,

If you know Assembly language,,,x86,,,,,,,,asm ,,, then answer please,,,,

Don't use plagiarized sources. Get Your Custom Essay on
Answered! subject… assembly language,, If you know Assembly language,,,x86,,,,,,,,asm ,,, then answer please,,,,…
GET AN ESSAY WRITTEN FOR YOU FROM AS LOW AS $13/PAGE
Order Essay

I have a question and i have the answer,,, but ineed tto evaluate my answer,,,,

question is:
Implement a simple 4 functios calculator for 3 digits entry.

The user will enter 2 digits for the first and the second numbers.

The user will chose between the operation type +,-,* or /

The result will be displayed.

Work with 32 bits variables and regist

use x86. asm

answer is:

con msg
mov ah, 09h
lea dx, msg
int 21h
endm

data segment
buf1 db “Enter a decimal number : $”
buf2 db 0ah, “Invalid Decimal Number…$”
buf3 db 0ah, “Equivalent hexadecimal number is : $”
buf4 db 6
db 0
db 6 dup(0)
multiplier db 0ah
data ends

code segment
assume cs:code, ds:data
start :
mov ax, @data
mov ds, ax
mov es, ax

con buf1

mov ah, 0ah
lea dx, buf4
int 21h

mov si, offset buf4 + 2
mov cl, byte ptr [si-1]
mov ch, 00h
subtract :
mov al, byte ptr [si]
cmp al, 30h
jnb cont1
con buf2
jmp stop
cont1 :
cmp al, 3ah
jb cont2
con buf2
jmp stop
cont2 :
sub al, 30h
mov byte ptr [si], al

inc si
loop subtract

mov si, offset buf4 + 2
mov cl, byte ptr [si-1]
mov ch, 00h
mov ax, 0000h
calc :
mul multiplier
mov bl, byte ptr [si]
mov bh, 00h
add ax, bx
inc si
loop calc

mov si, offset buf4 + 2
mov bx, ax
mov dx, 0000h
mov ax, 1000h
convert :
mov cx, 0000h
conv :
cmp bx, ax
jb cont3
sub bx, ax
inc cx
jmp conv
cont3 :
cmp cx, 0ah
jb cont4
add cl, 37h
jmp cont5
cont4 :
add cl, 30h
cont5 :
mov byte ptr [si], cl
inc si
mov cx, 0010h
div cx
cmp ax, 0000h
jnz convert

mov byte ptr [si], ‘$’
con buf3
con buf4+2
stop :
mov ax, 4c00h
int 21h
code ends
end start

**********************

new question is: Can someone please implement a calculator…… so the user can enter as many digits as they want for each number*******

take your time,,, no rush,,

i promise to give you thumbs up….

Please send me a copyable answer,,, with out put,,,, use ,,,,,,,,,,,,,,,,,,,, X86        asm

Expert Answer

 section .data
    ; Messages
 mesg1        db      n,'-Calculator-',n,0
 lmesg1       equ     $ - mesg1
 mesg2        db      n,'Number 1: ',0
 lmesg2       equ     $ - mesg2
mesg3        db      'Number 2: ',0
lmesg3       equ     $ - mesg3
mesg4        db      n,'1. Add',n,0
lmesg4       equ     $ - mesg4

mesg5        db      '2. Subtract',n,0
lmesg5       equ     $ - mesg5

mesg6        db      '3. Multiply',n,0
lmesg6       equ     $ - mesg6

mesg7        db      '4. Divide',n,0
lmesg7       equ     $ - mesg7
mesg8        db      'Operation: ',0
lmesg8       equ     $ - mesg8

mesg9        db      n,'Result: ',0
lmesg9       equ     $ - mesg9

mesg10       db      n,'Invalid Option',n,0
lmesg10      equ     $ - mesg10
section .bss

Still stressed from student homework?
Get quality assistance from academic writers!