I Did Some Of The Code But Cant Figure Out The Rest, I Need Help. In Class We Ar
ID: 3709872 • Letter: I
Question
I Did Some Of The Code But Cant Figure Out The Rest, I Need Help. In Class We Are Using Ubunto Linux . So Can You PLEASE help .
Question : Write a program to read in a hex digit A-F and display it on the next line in decimal.
My Work :
.section .data
msg1: .ascii "Enter A Hex Value From A Through F "
msg2: .ascii "In Decimal It Is "
char: .ascii "? "
msgend:
.equ len1, msg2 - msg1
.equ len2, msgend - msg2
.section .text
.global _start
_start:
movl $4, %eax
movl $1, %ebx
movl $msg1, %ecx
movl $len1, %edx
int $0x80
mov1 $3, %eax
mov1 $0, %ebx
mov1 $char, %ecx
mov1 $2, %edx
int $0x80
movb char, %al
movb %al, char
This Part Is The End :
movl $1, %eax
movl $0, %ebx
int $0x80
Explanation / Answer
.MODEL SMALL .STACK 100H .DATA MSG_1 EQU 'Enter the Hex digit (A-F) : $' MSG_2 EQU 0DH,0AH,'The corresponding Decimal dgit is : $' PROMPT_1 DB MSG_1 PROMPT_2 DB MSG_2 .CODE MAIN PROC MOV AX, @DATA ; initialize DS MOV DS, AX LEA DX, PROMPT_1 ; load and display PROMPT_1 MOV AH, 9 INT 21H MOV AH, 1 ; read the hex digit INT 21H MOV BL, AL ; save the hex digit into BL LEA DX, PROMPT_2 ; load and display PROMPT_2 MOV AH, 9 INT 21H MOV AH, 2 ; display the first decimal digit i.e. 1 MOV DL, 31H INT 21H SUB BL, 11H ; convert the character into second digit MOV DL, BL ; display the second digit INT 21H MOV AH, 4CH ; return control to DOS INT 21H MAIN ENDP END MAIN
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.