微机原理及接口技术实验指导书武汉理工大学教材中心2012年7月目录DVCC-32JHP微型计算机实验平台技术说明………………………………………………1实验一、软件开发环境与DEBUG调试……………………………………………………10实验二、指令系统及汇编一…………………………………………………………………14实验三、指令系统及汇编二…………………………………………………………………16实验四、汇编语言程序设计及调试一………………………………………………………18实验五、汇编语言程序设计及调试二………………………………………………………21实验六、汇编语言程序设计及调试三………………………………………………………24实验七、8255可编程并行接口的应用………………………………………………………27实验八、8253可编程定时/计数器的应用设计……………………………………………321DVCC-32JHP微型计算机实验平台技术说明科学技术的发展,将微机的应用带入各个领域,于是掌握微机系统知识及微机接口技术就显得尤为重要。纵观微机的发展,无论是微处理器、微机接口还是微机操作平台,都发生了巨大的变化,于是教学生学习并掌握微机新技术就成为高校培养人才新的目标。1.1微机的发展变化微机的发展变化主要体现在两个方面:第一方面属于微处理器的发展变化,第二方面属于微机体系结构及微机操作平台的发展变化。微处理器作为微机中的核心部件,从早期的8位处理器,发展到16位的8086/8088,32位的80386及奔腾系列,已经历了6代的变化(现在INTEL公司还推出了64位的Itanium)。从80386开始的32位80x86系列CPU提出了实模式、保护模式及虚拟86模式三种工作模式的概念:在实模式下。CPU相当于一个可以进行32位处理的快速8086;在保护模式下,CPU的工作原理和机制与16位处理器的工作原理及机制产生了本质的不同:它采用了新的应用数据结构、虚拟存储管理方案、新的中断/异常处理机制并从硬件上支持了多任务,目前微机主流操作系统(如windows9x)都是基于CPU的保护模式来工作的。而虚拟86模式,是保护模式下一个可以仿真8086的任务。在微处理器发展的同时,微机体系机构也从早期CPU总线直接与外设相连发展到现在采用的多级总线结构,PC微机的外围总线也由低速总线发展到以PCI总线为主的高速总线,于是外围高速设备得到越来越广泛的使用,社会对接口应用开发人员掌握的软硬件知识及具备的软硬件开发能力提出了更高的要求。而微机操作平台方面,Windows9x操作系统已经成为PC微机操作系统的主流,由于Windows是基于CPU保护模式工作的,它与在16位操作系统时代的DOS、Windows3.1有所不同。如在以往的操作系统上,用户程序可以通过直接调用BIOS或者DOS功能调用实现对硬件的访问操作。而32位操作系统Windows9x,在CPU保护模式的支持下,对系统核心程序及系统硬件操作采取了屏蔽的策略,若要实现对硬件中断、DMA、I/O或者是绝对存储访问,都必须通过设备驱动程序。这使得系统变得更安全,也使得在Windows上从事核心软件开发及硬件控制对一般程序员变得非常困难。于是大多数应用开发者只能停留在为别人的核心技术开发外包程序的层面上,对许多技术的核心不能碰、也不敢碰,阻碍了我国自主科技产业创新与发展的速度。1.2微机的系统机构PC微机的发展过程中,无论是徽处理器还是微机的系统结构始终都保持着向上兼容性。从PC/XT总线结构开始,系统总线不断升级,相继出现了ISA总线、EISA总线、MCA(微通道结构)总线、VESA局部总线、PCI局部总线和AGP接口,微机的整体处理速度和可靠性得到了提高。1.2.1基于PC/XT总线的微机结构在采用8088作为处理器的第一代通用微型计算机中,系统中的所有其他部件直接与处理器相连,处理器作为系统核心,通过PC总线对系统中的其他部件进行控制及数据交换。这种PC总线称为XT总线,它采用了8位数据总线和20位地址总线。以CPU时钟作为总线时钟,可支持4通道DMA和8级硬件中断。其结构示意如图1-2-1所示。1.2.2PCAT/ISA总线的微机结构1984年IBM公司公布了PC/AT系统总线结构,系统中采用了80286微处理器和80287协处理器。PC/AT支持与PC/XT兼容的结构,且性能比PC/XT增强了许多。后来Intel公司联合其他几家微处理器生产厂家推出了一个公开的总线标准称为ISA总线规范,它支持了24为地址线、16位数据线、15级硬件中断和7个DMA通道。其结构示意如图l-2-2所示。2图1-1-1PC和PC/XT系统结构1.2.3基于南北桥结构中心结构的微机系统随着微处理器和操作系统的变化,用户对微机处理的高速性提出新的要求,为了提高处理器与各部件及部件与部件间传输信息的整体效率,微机系统中采用了十分明确的总线分级结构,即CPU总线、局部总线(PCI总线)、系统总线结构。连接各级总线的是一些高集成度的多功能桥路芯片,它们可以起到信号速度、电平转换和控制协议转换的作用。按照芯片组功能和连接方法的划分,该结构可以分成南北桥结构和中心结构。在南北桥结构中,各级总线主要通过两片桥芯片进行连接。一片称作北桥的用于连接CPU总线和PCI总线,另一片称作南桥,用于连接PCI总线和系统总线。常用的芯片组有Intel公司的440系列,如440BX,其南桥芯片为82371EB,集成了PCI-ISA连接器、IDE控制器、USB控制器、2个增强型DMA控制器、2个8259中断控制器、8253/8254定时/计数器、电源管理逻辑和可选的I/OAPIC等。这种总线结构可以使高速外围设备通过PCI插槽直接与PCI相连,适应当前高速外设与微处理器连接的需求。其结构示意如图l-2-3所示。图1-2-2PCAT/ISA的总线结构8个8位扩展插槽扩展总线缓冲系统总线DRAMDRMA控制器8087可选8088ROMBIOSDMA控制器8253825982558250ISA总线6个16位AT/ISA扩展插槽8个8位扩展插槽CPU总线DRMAL2CacheDRMA与L2Cache控制器8042MPU键盘鼠标控制器PCAT/ISA核心逻辑芯片组实时钟/日历CMOSRAM80486-XXROMBIOS3图1-2-3微机的南北桥总线结构在中心机构的微机中,芯片组由3个芯片组成:存储控制中心MCH、I/O控制中心ICH和固件中心FWH。MCH用于提供高速AGP接口、动态显示管理、电源管理和内存管理功能。ICH提供了音频编码和调制解调器编码接口、IDE控制器、USB接口、局域网络接口,并与PCI总线及其插槽连接在一起。ICH还和SuperI/O控制器相连,而superI/O主要为系统中的慢速设备如串口、并口、键盘、鼠标等,提供与系统通信的数据交换接口。固件中心包含了主板BIOS、显示BIOS和可用于数字加密、安全认证等领域的硬件随机数产生器。其结构示意如图1-2-4所示。图1-2-4中心结构的微机结构CPU总线PCI总线CPUCPU存储控制中心SuperI/O固件中心I/O控制中心Lan连接器AC`97编码2个IDE接口2个USB接口AGP图形控制器主存储器PCI总线CPU总线ISA总线PentiunⅡPentiunⅡ图形设备北桥芯片组主存南桥芯片组I/OAPIC2个USB接口2个IDE接口系统BIOS41.3实验程序开发集成环境将实验程序开发工具(汇编语言、C/C++语言程序开发包),故障诊断程序和外设模块实验演示程序集成在一个环境中,构成一个用户应用程序集成开发环境(IDE)。实验程序的编辑、编译、连接、调试、运行和修改的全过程都在这个IDE中完成。如图1-3-1所示。图1-3-1DVCC-32HJP集成开发环境forWindows1.3.1实验程序开发工具DVCC32JHP集成开发软件安装完成后,在桌面和开始菜单里都可以找到该软件,点击它就可以运行了。该软件支持两种类型的程序开发:汇编程序(.asm文件)和C语言程序(.cpp,.h文件)。除了一般的编辑功能外,本软件还支持语法高亮,大大提高了程序的可读性。用户编辑好程序并保存后,即可方便地进行编译。1.新建一个源程序DVCC32JHP集成开发软件运行后,选择菜单栏中的“文件”菜单,菜单下拉后选择“新建”,或是在工具栏中单击“新建”,会弹出“新建”窗口,用户选择新建表单中的“ASM”或“CPP”,点击“确定”即可新建对应的汇编或c语言程序,点击“取消”则取消新建源文件操作。2.打开一个源程序集成开发环境下,选择菜单栏中的“文件”菜单,菜单下拉后选择“打开”,或是在工具栏中单击“打开”,会弹出“打开”文件选择窗口,在窗口中“文件类型”下拉菜单中选择“ASM文档(*.asm)”或“CPP文档(*.cpp)”一项,程序即显示当前目录下所有的asm或cpp文档,单击要选择的文件,选中的文件名会显示在“文件名”中,单击“打开”则打开当前选中的cpp文档显示在文档显示区域。点击“取消”则取消新建源文件操作。3.编辑源程序本软件提供了基本的编辑功能,并实现了实时的语法高亮,各项操作说明如下:撤消5集成开发环境下,选择菜单栏中的“编辑”菜单,菜单下拉后选择“撤消”,或是在工具栏中单击“撤消”,即可撤消上一步剪切或粘贴操作。剪切集成开发环境下,选择菜单栏中的“编辑”菜单,菜单下拉后选择“剪切”,或是在工具栏中单击“剪切”,即可将文档显示区域中选中的内容剪切到剪贴板。复制集成开发环境下,选择菜单栏中的“编辑”菜单,菜单下拉后选择“复制”,或是在工具栏中单击“复制”,即可将文档显示区域中选中的内容复制到剪贴板。粘贴集成开发环境下,选择菜单栏中的“编辑”菜单,菜单下拉后选择“粘贴”,或是在工具栏中单击“粘贴”,即可将剪贴板中当前内容粘贴到文档显示区域光标所在处。全选集成开发环境下,选择菜单栏中的“编辑”菜单,菜单下拉后选择“全选”,即可将文档区域中所有内容选中。查找集成开发环境下,选择菜单栏中的“编辑”菜单,菜单下拉后选择“查找”,弹出查找对话框。在查找内容一栏中输入需要查找的内容,可以选择区分大小写和全字匹配,单击查找下一个,程序则在文档显示区域中搜索与查找内容匹配的字符串,找到第一个后则高亮显示,用户点击查找下一个,则继续搜索下一个匹配字符串,点击“取消”退出查找操作。替换集成开发环境下,选择菜单栏中的“编辑”菜单,菜单下拉后选择“替换”,弹出查找替换对话框。点击“替换”,在查找内容一栏中输入被替换的内容,在替换一栏中输入替换的内容,可以选择区分大小写和全字匹配。单击“查找下一个”,程序则在文档显示区域中搜索与查找内容匹配的字符串,找到第一个后则高亮显示,用户可单击“替换”将匹配的字符串替换,也可单击“全部替换”,将当前文档显示区域中所有与查找内容匹配的字符串全部替换。单击“查找下一个”则继续搜索下一个匹配字符串。也可单击“取消”退出查找操作。4.保存源程序集成开发环境下,选择菜单栏中的“文件”菜单,菜单下拉后选择“保存”,如果是无标题文档,用户需在提示下输入文档的名称及选择保存的路径,单击确定后保存;否则程序自动保存当前文档显示区域中显示的文档。或者选择菜单栏中的“文件”菜单,菜单下拉后选择“另存为”,并在提示下输入文档的名称及选择保存的路径,单击确定后保存。5.编译源程序5.1编译调试窗口集成开发环境下,选择菜单栏中的“查看”菜单,单击编译调试窗口选项或是单击工具栏中“显示/隐藏编译调试窗口”按钮则可对状态栏的显示进行操作。若当前环境显示编译调试窗口,则单击编译调试窗口选项即可隐藏该窗口,编译调试窗口选项前选中标记将消失;若当前隐藏编译调试窗口,则单击编译调试窗口选项即可显示该窗口,编译调试窗口选项前选中标记将显示。5.2ASM编译汇编集成开发环境下,选择菜单栏中的“ASM编译”菜单,选择汇编选项则程序对当前ASM源文件进行汇编,编译调试窗口中输出汇编结果,若程序有错,则详细报告错误信息。汇编+链接集成开