– NHẬP XUẤT SỐ DẠNG BIN-HEX-DEC - SOẠN THẢO, BIÊN DỊCH VÀ CHO C...

Bài 4 – Nhập xuất số dạng BIN-HEX-DEC

-

Soạn thảo, Biên dịch và cho chạy file BAI_6C.ASM để kiểm tra kết quả.

-

Đọc thủ tục DEC_OUT để tìm hiểu giải thuật xuất giá trị trong AX ra màn hình

ở dạng thập phân. Từ đó đưa ra giải thuật nhập số thập phân từ bàn phím.

-

Viết lại chương trình trên để nhập 2 số thập phân A và B có 2 chữ số, sau đó in

ra màn hình kết quả A + B ở dạng thập phân.

-

Nhập xuất số thập phân ÂM như thế nào?

inchuoi MACRO

chuoi

MOV

AH,

9h

LEA

DX,

chuoi

INT

21h

ENDM

DSEG SEGMENT

msg1 DB "Hay nhap 1 ky tu: $"

msg2 DB "Ma ASCII o dang Dec: $"

xdong DB 10, 13, ‘$’

kytu DB ?

DSEG ENDS

CSEG SEGMENT

ASSUME CS:CSEG, DS:DSEG

begin: MOV AX, DSEG

MOV DS, AX

inchuoi

msg1

MOV

AH,

01h

INT

21h

MOV kytu, AL ; cất ký tự nhận được

inchuoi

xdong

inchuoi

msg2

XOR

AX,

AX

MOV AL, kytu ; Ký tự cần in

CALL

dec_out

MOV AH, 01

MOV AH, 4Ch

; thoat khỏi chương trình

dec_out PROC

XOR

CX,CX ;

CX

đếm số chữ số thập phân

MOV

BX,10

chia10: XOR DX,DX

DIV BX ; DX:AX

÷

BX => AX: Thương, DX: số dư

PUSH

DX

;

Cất số dư vào stack

INC

CX

CMP

AX,

0

JNZ chia10 ; nếu AX>0 thì chia tiếp cho 10