最新大学微机原理与接口技术期末试题及答案
MOV AH, AL
AND AL, 0FH
CMP AL, 0AH
JB G1
ADD AL, 7
G1: ADD AL, 30H
MOV CL, 4
AND AH, 0F0H
SHR AH, CL
CMP AH, 0AH
JB G2
ADD AH, 7
G2: ADD AH, 30H
四、编写程序实现从键盘输入一个补码数(1-4位十六进制数),在显示器上以十进制形式显示其真值。(10分)
例如:
输入 FFFF;
输出 =-1;
输入 80;
输出 =128
stack segment stack 'stack'
dw 32 dup(0)
stack ends
data segment
obuf db 'input one number:=','$'
obuf1 db 'result:=','$'
ibuf db 5,0,5 dup(0)
obuf2 db 7 dup(0)
data ends
code segment
begin proc far
assume ss:stack,cs:code,ds:data
push ds
sub ax,ax
push ax
mov ax, data
mov ds, ax
mov dx, offset obuf
mov ah, 9
int 21h
mov dx, offset ibuf
mov ah, 10
int 21h
mov dl, 0ah
mov ah, 2
int 21h
mov dx, offset obuf1
mov ah, 9
int 21h
mov si, offset ibuf+2
mov bl, ibuf+1
mov bh, 0
mov ax, 0
mov cl, 4
again: shl ax, cl
mov dh,[si]
cmp dh,41h
jc ag1
sub dh,7
ag1: sub dh,30h
or al, dh
inc si
dec bx
jnz again
mov cx, 10
mov di, offset obuf2+6
mov byte ptr [di],'$'
test ax, 8000h
pushf
jz ag2
neg ax
ag2: mov dx, 0
div cx
add dl, 30h
dec di
mov [di],dl
or ax, ax
jnz ag2
popf
jz ag3
dec di
mov byte ptr [di],'-'
ag3: mov dx, di
mov ah,9
int 21h
ret
begin endp
code ends
end begin
更多大学知识相关文章推荐:
【最新大学微机原理与接口技术期末试题及答案】相关文章: