宏指令设计实验

本文档展示了如何使用宏指令来改进一个汇编程序,该程序用于接收用户输入的字符,判断其类型并显示相应的消息。同时,还提供了一个找出数据段中20个数的最大值并以十进制形式输出的程序,同样使用了宏指令进行优化。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

1、下面是按要求实现的源程序,现要求将源程序中的重复部分指令改用宏指令实现。
从键盘输入一字符,判断该字符是小写字母、大写字母、数字还是其它字符。若输入为小写字母,则显示“You Input a Lowercase Letter!”; 若输入为大写字母,则显示“You Input a Uppercase Letter!”; 若输入为数字,则显示“You Input a Digit!”; 若输入为其它字符,则显示“You Input Other Letter!”。

  1. data  SEGMENT
  2.       INfor1  DB        0ah, 0dh, 'please press any key to input a letter:$'
  3.       INfor2  DB        0ah, 0dh, 'you input a lowetcase letter!$'
  4.       INfor3  DB        0ah, 0dh, 'you input a uppercase letter!$'
  5.       INfor4  DB        0ah, 0dh, 'you input a digit!$'
  6.       INfor5  DB        0ah, 0dh, 'you input a other letter!$'
  7. data  ENDS
  8. code  SEGMENT
  9.       ASSUME    CS: code, DS: data
  10. start:        MOV        AX, data
  11.               MOV        DS, AX
  12.               MOV        DX, OFFSET INfor1
  13.               MOV        AH, 09
  14.               INT       21h
  15.               MOV        AH, 01h
  16.               INT       21h
  17.               CMP        AL, '0'
  18.               JB        other
  19.               CMP        AL, '9'
  20.               JBE       DIgit
  21.               CMP        AL, 'A'
  22.               JB        other
  23.               CMP        AL, 'Z'
  24.               JBE       upper
  25.               CMP        AL, 'a'
  26.               JB        other
  27.               CMP        AL, 'z'
  28.               JBE       LOWer
  29.               JMP       pend
  30. LOWer:        MOV        DX, OFFSET INfor2
  31.               MOV        AH, 09h
  32.               INT       21h
  33.               JMP       pend
  34. upper:        MOV        DX, OFFSET INfor3
  35.              
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值