- 1、本文档共15页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
要建立和运行用户自己编写的汇编语言程序,必须要有如下文件:masm.exe(宏汇编程序)和 link.exe(连接程序)
汇编程序的上机过程:
1编辑源程序 可以用记事本或DOS下的EDIT编辑器来编写源程序。但程序保存时文件的扩展名必须为.asm.
请编辑如下源程序
data segment
s1 db ‘ hello,how are you!’,’$’
data ends
stack segment para stack
db 64 dup(?)
stack ends
code segment
assume cs:code,ds:data
start: mov ax,data
mov ds,ax
mov ah,9h
mov dx,offset s1
int 21h
mov ah,4ch
int 21h
code ends
end start
2汇编程序 计算机只能接收机器码,源程序经过汇编后可产生机器码的目标文件,扩展名为.obj。如果在源程序中有任何语法错误,宏汇编将会指出。必须修改错误,直到汇编成功为止。
在DOS状态执行masm.exe,则屏幕显示与操作如下:
Source filename [.asm]: lx1↙
Object filename [lx1.obj]: ↙
Source listing [nul.lst]: ↙
Cross-reference [nul.crf]: ↙
Warning Errors
Severe Errors
其中画线部分为用户键入部分,lx1为源程序名,方括号中是机器规定的默认文件名。
3连接程序 汇编后产生的目标文件必须经过连接,才能成为可执行文件.exe
在DOS状态执行link.exe,则屏幕显示与操作如下:
Object Modules [.obj]: lx1↙
Run file [lx1.exe]: ↙
List file [nul.map]: ↙
Libraries [.lib]: ↙
其中画线部分为用户键入部分,lx1为目标程序名,方括号内为机器默认文件名。
4执行程序 在DOS状态执行lx1.exe,则屏幕显示如下:
hello,how are you!
软件实验
实验1 两个多位十进制数相加的实验
实验内容:将两个多位十进制数相加,要求加数和被加数均以ASCII码形式各自顺序存放以DATA1和DATA2为首的5个内存单元中(低位在前),结果送回DATA1处。
实验2 两个数相乘的实验
实验内容:实现十进制数的乘法。要求被乘数和乘数均以ASCII码形式各自顺序存放在内存中,乘积在屏幕上显示出来。
实验3 字符串匹配实验
实验内容:编写程序实现两个字符串比较。如果相同,则屏幕显示“match”,否则屏幕显示”nomatch”
实验4 从键盘输入数据并显示的实验
实验内容:将键盘输入的2位十六进制数转换为等值的二进制数,并在屏幕上显示。列如:键入f2,则显实验5 字符和数据计算的实验
实验内容:先在屏幕上显示“input string,”,输入字符串; 再显示“result=”。如为0~9的数字,则计数器加1,如为非数字,则直接显示,但不计数。
实验6 改变年月日的实验
实验内容:先在屏幕上显示“what is the date(mm/dd/yy)?“从键盘输入的月日年能把计算机的系统日期改为你键入的值。
实验7 将小写字母转换为大写字母的实验
实验内容:接收键入字符(以Ctrl-c为结束),将小写字母变为大写字母,并在屏幕上显示。
实验8 排序实验
实验内容:从首地址为1000H开始存放10个数,将这些数按降序排列.
实验9 设置光标的实验
实验内容:设置光标,起始位置为第5行第6列,结束位置为第8行第6列。
实验10 计算N!的实验
实验内容:在键盘输入数字,结果显示在屏幕上。
硬件实验
实验一 I/O地址译码
实验目的
掌握I/O端口译码电路的工作原理;
硬件连线
本实验用到的74HC74为双D触发器,在实验箱面板的直流电机旁,标为U29; 74LS138为地址译码器,在实验箱面板的地址译码处,标为U3。它们之间的连线如下:
74HC74的1脚(1CR) 接地址译码输出Y5(2A8~2AFH),
74HC74的2脚(1D) 接VCC,
74HC74的3脚(1CLK)接地址译码输出Y4(2A0~2A7H),
74HC74的4脚(1PR) 接VCC,
74HC74的5脚(1Q) 接发光二极管L7R。
实验原理
CPU对外设的操作是通过I/O端口进行的,每个端口有一个编号,称为端口号,CPU的地址线经过端口译码电路输出一负脉冲选中某一端口。任何时刻都
文档评论(0)