第5讲汇编语言程序设计
- 格式:pdf
- 大小:14.75 MB
- 文档页数:133


微机原理及应用课程代码:03110992学分:3总学时: 54 讲课学时:40实验学时:0 上机学时:14适用专业:全校非计算机专业先修课程:计算机软件基础、C语言程序设计,09100070/09100020开课学期:第五学期其他:院级任选课一、课程性质及作用《微机原理及应用》是高等院校非计算机专业的一门计算机基础课程。
它主要讲解微型计算机的组装、工作原理和基础汇编语言程序设计,主要包括计算机基础知识,微处理器结构和组装,存储器,指令系统,汇编语言程序设计,输入输出与中断系统,I/O接口技术等。
学习本课程可使学生了解与电脑硬件相关的基本概念,掌握汇编语言编程的基本思想,为学生今后的学习、工作、生活打好基础,也是计算机等级考试三级pc和四级、程序员考试等必考的科目之一,而且本课程与上机试验紧密结合,充分培养学生的实际动手能力。
二、本课程与其他有关课程的联系学习本课程之前学生应该略有计算机基础知识和编程概念。
前继课和后继课主要有:《计算机基础知识》、《C语言》。
三、课程的内容及课时分配第一章计算机基础知识 (8学时)1.绪论2、计算机中的数据表示和编码3、基本运算与基本逻辑功能部件4、微型计算机中作原理及基本结构第二章微处理器的结构 (8学时)1、8086CPU的功能结构2、8086CPU的引脚信号和工作模式3、普通常用电脑的硬件体系结构第三章微型计算机的存储器 (6学时)1、存储器概述2、RAM3、ROM4、辅助存储器5、存储器的组织和空间布局第四章指令系统 (10学时)1、指令与指令格式2、寻址方式3、指令系统第五章汇编语言程序设计 (4学时) 1、概述12、汇编语言语句格式3、汇编语言程序设计4、汇编语言程序的调试第六章输入输出与中断系统 (6学时)1、输入输出设备简介2、输入输出接口寻址方式3、输入输出数据传送方式4、中断系统与中断调用第七章输入输出接口简介 (4学时)第八章 32位微处理器及现代先进技术简介 (2学时)四、实验性环节内容1、了解微型计算机dos编程环境、debug调试 (4学时)2、了解masm,熟悉debug (4学时)3、用masm编程,了解简单的指令应用 (2学时)4、编制程序(选择结构、循环) (2学时)5、综合应用与复习指令系统 (2学时)五、课程设计内容及学时无课程设计。
汇编语⾔(王爽第三版)实验5编写、调试具体多个段的程序实验5 编写、调试具体多个段的程序⼀。
将下⾯的程序编译连接,⽤Debug加载、跟踪,然后回答问题。
assume cs:code,ds:data,ss:stackdata segmentdw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987hdata endsstack segmentdw 0,0,0,0,0,0,0,0stack endscode segmentstart: mov ax,stackmov ss,axmov sp,16mov ax,datamov ds,axpush ds:[0]push ds:[2]pop ds:[2]pop ds:[0]mov ax,4c00hint 21hcode endsend start程序分析:由于是初次接触,我们逐步讲解,废话多点。
(1)此程序考察的是内存中数据段和栈段的定义。
程序共定义了1个数据段,data段,⾸先明确,在程序运⾏开始(标号start处),这个数据段就已经被定义好了,并且分配了内存空间,并赋值了。
⼀个栈段,stack。
同理这个数据段在没有被⼈⼯定义为栈结构时,也被定义好了。
并且分配了内存空间,并赋值了。
将此程序编译并连接后,使⽤debug调试,(这⾥需要注意,以下的段地址可能由于系统不同⽽有差异,主要是理解概念。
)E:\assembly>debug eee.exe-rAX=0000 BX=0000 CX=0042 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000DS=0B55 ES=0B55 SS=0B65 CS=0B67 IP=0000 NV UP EI PL NZ NA PO NC0B67:0000 B8660B MOV AX,0B66程序分析:我们什么也没执⾏,此时我们在data段定义的数据在哪?在ds:0100H处(原来讲过,程序最开始时ds:00~ds:100H是留给程序与操作系统通讯使⽤的psp内存段,参见书中p92);也就是说我们在ds:100H、0B55:100H或0B65:00处可以看见这些定义的数据。