实验一 编程实现键盘输入和显示
**************************************************************************************
一、题目内容
**************************************************************************************
❖ 循环提示由键盘输入一个字符,若为自己姓的首字母(大小写均可),则显示‘My name is:XXX(自己的姓名拼音);若为自己学号的末位数字,则显示’ My ID number is:XXX(自己的学号);若输入其他字符则退出程序。(三种情况都要验证至少一次截图附在实验报告中。)
❖ 以电科2班张弛同学1207071201242为例,运行程序后显示:
▪ Please input a character: z
▪ My name is: Zhang Chi
▪ Please input a character: 2
▪ My ID number is: 1207071201242
▪ Please input a character:a
..
.
▪ Quit the program.
**************************************************************************************
二、流程图
**************************************************************************************
**************************************************************************************
..
.
三、程序代码
**************************************************************************************
stack segment stack 'stack'
dw 32 dup(0) ;定义32字空间
stack ends
data segment
OBUF DB 'Please input a key',0DH,0AH,'$' ;定义字符串
MSG1 DB 20H,'My name is:Zeng HongQing',0DH,0AH,0AH,'$' ;定义字符串
MSG2 DB 20H,'My ID number is:2',0DH,0AH,0AH,'$' ;定义字符串
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
AGAIN: MOV DX,OFFSET OBUF;调用9号功能,输出字符串“Please input a character:”
MOV AH,9
INT 21H
MOV AH,1;1号功能调用,等待输入一个字符
INT 21H
CMP AL,'z';将输入的字符与“z”比较是否一样
JZ NAM ;如果为零即输入字符为z则跳转至NAM
JMP ID ;如果不为零即输入字符非z则跳转至ID
..
.
NAM: MOV DX,OFFSET MSG1;9号功能调用,输出“My name is:Zeng HongQing”
MOV AH,9
INT 21H
JMP AGAIN
ID: CMP AL,32H ;将输入的字符与2的ASSCII码比较是否相等
JNZ OTHER ;如果不为零即输入不为2则跳转至OTHER
MOV DX,OFFSET MSG2 ;为零即输入为2则调用9号功能输出“My ID number is:2”
MOV AH,9
INT 21H
JMP AGAIN
OTHER: MOV AH,4CH;若输入的是其他字符,调用中断21h的4ch号功能,退出程序
INT 21H
ret
..
.
begin endp
code ends
end begin
**************************************************************************************
四、操作截图
**************************************************************************************
..
..
.
..
.
.
**************************************************************************************
五、实验分析或经验总结
**************************************************************************************
1、编译汇编文件:
..
.
先在记事本里输入代码后,再用汇编编译器编译。
具体过程如下:
1)、编辑:用编辑软件(EDIT.EXE或记事本)形成源程序(.ASM),如:LX.ASM;
2)、汇编:用汇编程序(MASM.EXE)对源程序进行汇编,形成目标文件(.OBJ),格式如下:MASM LX.ASM;
3)、连接:用连接程序(LINK.EXE)对目标程序进行连接,形成可执行文件(.EXE),格式如下:LINK LX.OBJ;
4)、执行:如果结果在屏幕在显示,则直接执行可执行文件。
5)、调试:用调试程序(LINK.EXE)对可执行文件进行调试,格式如下:DEBUG LX.EXE
2、代码用英文格式输入状态,否则出错。
3、注意关键词输入正确性。
4、数字要转换成ASCII码与字符比较,否则结果不符合预想。
..
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- nryq.cn 版权所有 赣ICP备2024042798号-6
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务