汇编语言--微机原理-课后题

来源:百度知道 编辑:UC知道 时间:2024/05/14 08:15:17
问题一:
用汇编语言编制一个程序,把变量bufX和bufY中的较大者存入bufZ;若两者相等。则把其中之一存入bufZ。假设变量存放的是8位有符号数。

问题二:
用汇编语言编写一个源程序,在键盘上按一个键,将从AL返回的ascii码值显示出来,如果按ESC键则程序退出

问题一:
; 本程序通过编译,运行正确
Code Segment
Assume CS:Code,DS:Code
bufX db 56
bufY db -29
bufZ db ?
Start: push cs
pop ds ;使数据段与代码段同段
mov ah,bufX
mov al,bufY
cmp ah,al
jge $+4
xchg ah,al
mov bufZ,ah
Exit_Proc: mov ah,4ch ;结束程序
int 21h
Code ENDS
END Start ;编译到此结束

问题二:
; 本程序通过编译,运行正确
Code Segment
Assume CS:Code,DS:Code
; ---------------------------------------
; 功能:显示指定地址(Str_Addr)的字符串
; 入口:
; Str_Addr=字符串地址(要求在数据段)
; 用法: Output Str_Addr
; 用法举例:Output PromptStr
Output MACRO Str_Addr
lea dx,Str_Addr
mov ah,9
int 21h
EndM
; ---------------------------------------
; 功能:输出回车换行
Output_CTLF proc Near
push ax
push dx
mov ah,02h
mov dl,0dh
int 21h
mov dl,0ah
int 21h
pop dx