【汇编程序】从键盘上输入一个10进制数字,查表求键入数字的平方值

  1. 需求:从键盘上输入一个10进制数字,查表求键入数字的平方值 存入al寄存器中 并显示有关的提示信息

  2. 实现思路:在程序的数据段,先给出数字0-9的平方值 逐个存入table开始的内存中 形成表格 代码段由3部分组成,显示提示信息

  3. 等待键入数字 查表求键入数字的平方值 并将结果显示在屏幕上

data segment
    table db 0,1,4,9,16,25,36,49,64,81 ;数字 0-9的平方值
    buf db 'please input a number (0-9):',0dh,0ah,'$'; 提示信息  ;汇编中 定义字符串要使用db字节类型      0dh 回车 0ah换行
data ends 

code segment 
    assume cs:code,ds:data
   start:mov ax,data
         mov ds,ax                 ;设置ds
         mov dx,offset buf         ;设置dx 使字符串首地址=ds:dx
         mov ah,9h;                ;dos 9号 功能调用 显示以$结尾的字符串
         int 21h                   ;显示提示信息
         
         mov ah,01                 ;dos 1  从键盘输入字符 并在屏幕上显示 
         int 21h                   ;al-键入数字的ascll码
         and al,0fh                ;al-截下数字值  
         
         mov bx,offset table       ;bx指向头地址table
         mov ah,0                  ;ax寄存器高字节清0
         add bx,ax                 ;表头地址+键入数字al 结果存入bx
         mov dl,[bx]               ;查表求得平方值
         mov ah,02
         int 21h                       ;01从al输入,02从dl输出字符
         
         mov ax,4c00h             ;程序结束
         int 21h                   ;返回dos
         
      code ends
     end start
         
         
         
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值