汇编-从键盘输入数据并显示的程序
来源:互联网 发布:阿里云服务器怎么购买 编辑:程序博客网 时间:2024/06/02 21:21
一、实习目的与要求
掌握接收键盘数据的方法并了解将键盘数据显示时须转换为ASCⅡ码的原理。
二、实习内容
编写程序将键盘接收到的四位十六进制数据转换为等值的二进制数,再显示在终端上。
三、代码
data segment numStr db 4 dup(?),0ah,0dh,'$' msgOne db 'Please input four hexadecima:','$' msgTwo db 'The corresponding binary is :','$' msgThree db 0ah,0dh,'Input Error,Please this number again:','$' msgFour db 0ah,0dh,'The four hexadecima is:','$' c16 dw 16; result dw 0; data endsmyStack segment stack db 100 dup(?)mystack endscode segment assume DS:data,CS:codestart: mov ax,data; mov DS,ax; lea dx,msgOne; 输出msgOne mov ah,09h; int 21h; mov cx,4; mov bx,0;inputNum: mov ah,01h; 从键盘输入一个字符,其ASCII存放在al中 int 21h; call change; 若字符al为小写字母,则转换为相应的大写字母 cmp al,'0'; 若al < '0' jb inputError; cmp al,'f'; 若al > 'f' ja inputError; cmp al,'9' jbe inputRightfurtherJudge: cmp al,'a' jae inputRight; jmp inputError; inputRight:; 输入正确是的处理 mov numStr[bx],al; inc bx; jmp continue; inputError:; 输入错误时的处理 lea dx,msgThree; mov ah,09h; int 21h; inc cx; continue: loop inputNum lea dx,msgFour; 输出msgFour mov ah,09h; int 21h; lea dx,numStr; 输出numStr mov ah,09h; int 21h; mov cx,4; mov bx,0; mov ax,0; mov result,0;tranToBinary: call changeTwo; shl result,1; shl result,1; shl result,1; shl result,1; mov al,numStr[bx]; add result,ax; inc bx; loop tranToBinary outTranToBinary: lea dx,msgTwo; mov ah,09h; int 21h; mov cx,16;printResult: shl result,1; jae printZero; mov dl,'1' jmp nextPrint;printZero: mov dl,'0'nextPrint: mov ah,02h; int 21h; loop printResult mov ah,4ch; 程序结束 int 21h;change proc; 将小写字符转换为大写字符,若不是小写字母,则不做处理 ;al中为要转换的小写字母,al返回相应的大写字母 cmp al,'A'; jb then; cmp al,'Z'; ja then; add al,20h;then: ret;changeTwo proc; 将十六进制字符转换为十六进制 ;numStr[bx]中保存要转换的十六进制字符 cmp numStr[bx],'0'; jb next cmp numStr[bx],'9' ja further and numStr[bx],0fh; jmp next;further: cmp numStr[bx],'a' jb next; cmp numStr[bx],'f' ja next; sub numStr[bx],87; next: retcode endsend start
四、运行结果
0 0
- 汇编-从键盘输入数据并显示的程序
- 从键盘输入数据并显示
- 从键盘输入数据并显示
- 从键盘输入数据并显示
- 从键盘输入数据并显示
- 从键盘输入数据并显示
- 从键盘输入数据并显示
- 从键盘输入数据并显示
- [masm]实验二:从键盘输入数据并显示的实验
- 从键盘输入数据并显示(微机原理)
- java:从键盘输入数据并显示
- 从键盘输入并显示
- 第8章任务1:从键盘输入数据并显示
- 从键盘输入信息并显示
- 汇编-字符和数据的显示程序
- 编写一个子程序嵌套结构的程序模块,分别从键盘输入姓名及8个字符的电话号码,并以一定的格式显示出来
- 汇编语言: 编写一个程序,从键盘输入一个不长于8位的四进制数,并将所输入的数以10进制数 形式显示出来。
- 编写一个程序从键盘输入字符,并按要求输出
- Linux Shell Bash 交互与非交互式脚本
- MySQL事务
- USB接口定义详解(图)
- C/C++内存泄漏及检测
- Angular.js入门
- 汇编-从键盘输入数据并显示的程序
- arm平台编译动态库报 relocation R_ARM_MOVW_ABS_NC 错误解决
- 通信运营商:适合你吗?
- Android和iOS在新版本中助力HTML5
- verilog 实现无符号整数除法运算
- SQL数据类型优化
- 六
- 各种数据转换
- Unable to resolve target 'android-14' 解决办法