微机原理与接口技术实验教材..doc

  1. 1、本文档共89页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微机原理与接口技术实验教材.

第二章 微机原理与接口技术 实验一 汇编语言编译过程 汇编语言(AssemblyLanguage)是面向机器的程序设计语言。在汇编语言中,用助记符(Memoni)代替操作码,用地址符号(Symbol)或标号(Label)代替地址码。这样用符号代替机器语言的二进制码,就把机器语言变成了汇编语言。于是汇编语言亦称为符号语言。使用汇编语言编写的程序,机器不能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用的程序叫汇编程序,汇编程序是系统软件中语言处理系统软件。汇编程序把汇编语言翻译成机器语言的过程称为汇编。 一、实验目的 1、熟悉汇编语言源程序的基本格式。 2、理解汇编中地址的概念并体会汇编语言的特点。 3、理解各种数据类型和指令在存储器中的存放方式 3、掌握在DOS环境下汇编程序的编写、汇编和调试方法。 4、掌握在EMU8086环境下汇编程序的编写、汇编和调试方法。 二、实验原理 1、汇编语言的优点 汇编语言直接同计算机的底层软件甚至硬件进行交互,它具有如下一些优点: 面向机器的低级语言,通常是为特定的计算机或系列计算机专门设计的; 保持了机器语言的优点,具有直接和简捷的特点; 可直接、有效地访问、控制计算机的各种硬件设备,如磁盘、存储器、CPU、I/O端口等; 目标代码简短,占用内存少,执行速度快,是高效的程序设计语言; 经常与高级语言配合使用,应用十分广泛。 2、汇编语言的缺点 应该认识到,汇编语言是一种层次非常低的语言,它仅仅高于直接手工编写二进制的机器指令码,因此不可避免地存在一些缺点: 编写的代码非常难懂,不好维护; 很容易产生bug,难于调试; 只能针对特定的体系结构和处理器进行优化; 开发效率很低,时间长且单调。 3、DOS系统功能调用 MS DOS操作系统为程序设计者提供了可以直接调用的软中断处理程序,每一个中断处理程序完成一个特定的功能操作。依据编程需要选择适当的处理程序,编程者不需再重新编写程序,而是使用INT n软中断指令。每执行一种不同类型码n的软中断指令,就执行一个中断处理程序,其主要功能如下。 磁盘的读/写控制。 内存管理、文件操作和目录管理。 基本输入/输出(对键盘、打印机和显示器等)控制,另外还有日期、时间管理等。 本次实验使用9号功能调用(屏幕显示字符串) 格式: MOV DX, 字符串的偏移地址 ?????? MOV AH, 09H ?????? INT 21H ??? 功能:在屏幕上显示字符串。 ??? 在使用9号功能调用时,应当注意以下问题。 待显示的字符串必须先放在内存一数据区(DS段)中,且以‘$’符号作为结束标志。 应当将字符串首地址的段基址和偏移地址分别存入DS和DX寄存器。 三、实验仪器或实验条件 IBM-PC兼容计算机,Microsoft操作系统,MASM宏汇编或EMU8086。 四、实验内容与实验步骤 1、DOS环境 在DOS方式下键入edit new.asmCR 输入源程序并保存 键入masm newCR进行汇编,生成new.obj目标文件,并保存new.list列表文件 如果提示有错误,参考列表文件并修改程序文件new.asm,重复第三步键入link newCR进行连接,生成new.exe可执行文件键入newCR运行程序 2、Windows环境 在Windows中进入EMU8086 输入源程序并保存 单击emulate运行程序并在仿真窗口中观察运行结果 五、实验程序 stack segment stack stack dw 32 dup(?) stack ends data segment BUFB DB 9AH,0AFH BUFW DW 1234H,5678H OBUF DB 9 DUP (?) data ends code segment main proc far assume ss:stack, cs:code, ds:data start: push ds sub ax, ax mov ax, data mov ds, ax MOV CX, 8 MOV BX, 0 MOV AL, BUFB AGAIN: MOV AH,0 SHL AX, 1 ADD AH, 30H MOV OBUF[BX], AH INC BX LOOP AGAIN MOV OBUF[BX], $ MOV DX, OFFSET OBUF MOV AH, 9 INT 21H ret main endp code ends end start 六、实验注意事项或实验现象分析 汇编程序中所有字符及符号均为半角英文字符(注释除外)。 记录编译过程中错误并分析原因。 如将

文档评论(0)

dbtx + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档