8088实验系统操作指导手册
58B(88)微机接口实验指导

目录第一章 8088实验系统性能特点 (1)§1.1 8088技术指标 (1)§1.2 8088系统资源分配 (2)§1.3 8088系统输入/输出接口地址的分配 (3)第二章 8088实验系统组成结构 (3)§2.1 总体框图 (3)§2.2 通用外围电路 (4)§2.4 8088系统插头座定义 (6)第三章 8088CPU实验系统安装 (6)§3.1 8088CPU实验系统安装 (6)§3.2 8088系统启动运行 (7)第四章实验指导 (8)§4.1概述 (8)实验一使用ADC0809的A/D转换实验 (9)实验二使用DAC0832的D/A转换实验(一) (12)实验三使用DAC0832的D/A转换实验(二) (15)实验四 8255A可编程并行口实验(一) (17)实验五 8253A定时/计数器实验 (22)实验六使用8259A的单级中断控制实验实验七小直流电机调速实验 (44)实验八用 A/D和D/A实验闭环控制 (61)实验九用 8255和8253实现对直流电机的调速控制 (63)实验十计数器实验 (64)实验十一 DEBUG 实验实验十二程序语言设计调试第一章8088实验系统性能特点§1.1 8088技术指标1、用主频为 4.77MHZ 的 8088CPU 为主 CPU,并以最小工作方式构成系统。
2、提供标准RS232异步通信接口和USB即插即用通信接口,以联接电脑。
3、系统以一片 62256 静态 RAM 构成系统的32K 基本内存,地址范围为 00000H~07FFFH。
其中 00000H~004FFH 为系统数据区,00500H~00FFFH 为用户数据区,01000H~07FFFH 为用户程序区。
4、备有通用外围电路,包括逻辑电平开关电路、发光二极管显示电路、时钟电路、单脉冲发生电路、继电器及驱动电路、直流电机转速测量及控制驱动电路、步进电机及驱动电路、电子音响及驱动电路、模拟电压产生电路。
80868088汇编语言上机调试与实验指导

2、DEBUG的常用命令
1)显示、修改寄存器命令 R
格式:R[寄存器名]
功能:若给出寄存器名,则显示该寄存器的内容并可进行修改。缺省寄存器名,则按以下格式显示所有寄存器的内容及当前值(不能修改)。
AX=0000 BX=0004 CX=0020 DX=0000 SP=0080 BP=0000 SI=0000
8)指定文件命令 N
格式:N<文件名或扩展名>
功能:指定即将调入内存或从内存写入磁盘的文件名。该命令应该用在L命令和W命令之前。
9)装入命令 L
格式1:L[起始地址][盘符号][扇区号][扇区数]
1、编辑软件
行编辑软件:
全屏编辑软件:WPS、、、WORD、PE等。
当输入、建立和修改源程序时,可任选一种编辑软件,不要用格式控制符,要求编辑完成的文件扩展名一定是.ASM。
2、汇编程序
有汇编ASM.EXE、宏汇编MASM.EXE及TASM等,一般使用宏汇编MASM.EXE,因它比ASM.EXE功能强。TASM适用于8086/8088~Pentium系列指令系统所编写的汇编语言程序,是比较先进的汇编工具。
Microsoft(R) Macro assemble Version 5.00
Copyright(C) Microsoft Corp 1981-1985,1987 ALL rights reserved
Run file [<file>.EXE]:
List File [nul.map]:
4)汇编命令 A
格式:A[起始地址]
功能:将输入源程序的指令汇编成目标代码并从指定地址单元开始存放。若缺省起始地址,则从当前CS:100地址开始存放。A命令按行汇编,主要是用于小段程序的汇编或对目标程序的修改。
实验1DOS常用命令及8088、86指令使用

8088寄存器
umulator Register,累加器)一般用来参加运算的数据和结果, 在乘、除法运算、I/O操作、BCD数运算中有不可替代的作用。 BX(Base Register,基址寄存器)除可作为数据寄存器外,还可存 放内存的逻辑偏移地址,而AX,CX,DX则不能。 CX(Counter,数据寄存器)既可作为数据寄存器,又可在串指令和 移位指令中作为计数用。 DX(Data Register,数据寄存器)除可作为通用数据寄存器外,还 在乘、除法运算、带符号数的扩展指令中有特殊用途。 F 16位标志寄存器(CF,PF,AF,ZF,SF,OF,IF,DF) IP 16位指令指针寄存器
1.3.3 8088常用指令练习
4. BCD码加减法 1)内容: MOV AL,58 ADD AL,25 DAA 2)要求:用A命令键入,U命令检查,T命令逐条 运行并记录有关寄存器及AF内容。
1.4 实验报告
1、分别比较2/3/4小节内容中各条指令运行结果 和手算结果,注释程序。 2、比较H命令十六进制数加减法手算结果及实 验结果。 3、思考2小节中,为什么要修改IP指令的内容? 4、在3小节中自编程序运行记录(列出自编程序)。 5、实验体会和建议。
动态调试工具软件DEBUG命令
A A[地址] 汇编半源程序到指定地址中,仅有偏移地址时,段值在CS中 D D地址L长度 或 D[地址末址] 显示指定始址及范围的内容,按字节显示十六进制及字符数。如无参数,则DS:0 开始显示128字节内容,可连续使用D接着显示 E E地址[数据表]
将数据表中十六进制字节或字符串写入该地址开始的字节中。如无数据表,则显示该字节 的内容,然后等待输入一个字节的内容
DOS命令
[计算机]实验1实验系统认知实验
![[计算机]实验1实验系统认知实验](https://img.taocdn.com/s3/m/40594890bdeb19e8b8f67c1cfad6195f312be8f7.png)
实验一认识TDS86/88实验系统一、8088微机系统单元1、系统总线8088微机系统总线信号以针形式引出,其信号线定义如下:XD0-XD7:系统总线XA0- XA19:系统地址总线OPCLK:时钟信号线(596KHZ)PCLK:时钟信号(2.325MHZ)IOY7:I/O接口待扩展信号IOY0: I/O接口待扩展信号XIOW:I/O写信号线XIOR:I/O读信号线XMER:存储器读信号线XMEW:存储器写信号线HOLD:总线请求信号HLDA:总线请求应答信号RESET:复位信号线MY4-MY7:存储器待扩展信号线2. 系统中的8259中断控制器电路8088微机系统中的8259芯片工作于单片方式,但可由用户扩展连接成级连方式,其引脚以排针形式引出,供用户中断实验使用.系统实验平台启动时,8259被初始化,进入系统端口地址处 20H 21H3、系统中的8253定时/计数器电路8088微机系统中装有一片8253芯片,0号,1号计数通道被占用,2号计数通道以排针形式引出,开放给用户使用.CLK2,GATE2需用户自己接入.系统中8253的端口地址如下:0 号计数器 40H 1号计数器 41H2 号计数器 42H 控制寄存器 43H二、扩展接口实验单元1、8255并行接口实验单元8255的数据片选信号线,地址线,读写控制线等分别与系统总线相连,其中A,B,C 三个端口以排针的形式引出,供8255实验使用。
其端口地址如下所示:A口 60H B口 61HC口 62H 控制寄存器 63H2、8259级连接口实验单元电路板中部装有另一片8259芯片,它用于8259级连实验。
期引脚全部以排针形式引出,供用户实验使用。
期端口地址有用户的片选信号决定。
3、8237DMA传送实验单元DMA实验单元有8237DMA控制器,74LS373高位地址锁存器及外围电路组成。
4、0809A/D转换实验单元A/D转换单元由ADC0809芯片及电位器组成。
实验一 DOS常用命令及8088指令使用

3、DEBUG命令: A,D,E,F,H,R,T,U。
4、BCD码,ASCII码及用16进制数表示二进制码的方法。
5、8088寄存器: AX,BX,CX,DX,F,IP。
内容及步骤:
一、DOS常用命令练习:
1、将机房提供的系统盘插入A驱动器中,开机,出现提示符后打入命令FORMAT B:/S。等屏幕上出现提示后将新盘插入B驱动器并打回车。PC机即对新盘格式化并将糸统拷入。
实验一 DOS常用命令及8088指令使用
实验目的:
通过实验掌握下列知识:
1、DOS命令: DIR,DEL,RENAME,FORMAT,COPY。
2、8088指令: MOV,ADD,ADC,SUB,SBB,DAA,XCHG
ADD AL,25
DAA
2)要求:用A 命令键入,U命令检查,T命令逐条运行并记录有关寄存器及AF内容。
实验报告要求:
1、16进制数加减法手算结果及实验结果
2、8088常用指令练习部分的逐条运行记录,思考结果及自编程序运行记录 (列出自编程序)。
12、运行命令:G=起始地址 结束(断点)地址
13、单步命令:T=起始地址 运行指令数,进入子程序内部。
14、单步命令:P=起始地址 运行指令数,不进入子程序内部。
15、内存搬家命令:M 起始地址 结束地址 目的地址
4、用命令 F110 11F 41 重复上二项实验,观察结果并比较。
5、用命令 E100 30 31 32 …… 3F将30H-3FH写入地址为100开始的内存
单元中,再用D命令观察结果,看键入的16进制数是什么字符的ASCII码?
6、用H命令检查下列各组16进制数加减结果并和你的手算结果比较:
8086-8088指令系统

实验二(找出8086/8088指令系统所有指令的操作码的编码)一、实验目的本实验旨在利用debug工具的e和u功能找出8086/8088指令系统的指令格式中各种操作码编码对应的指令功能。
二、实验原理已经知道:1、每条指令1~6个字节不等2、指令的第一字节为操作码,规定指令的操作类型。
第二字节规定操作数的寻址方式接着以后的3~6 字节依据指令的不同取舍。
3、第一个字节的八个二进制位中前六位为操作码的主要部分,之后一位是D字段,然后是W字段,W指出操作数类型:W=0 为字节,W=1 为字,D指出操作数的传送方向:D=0 寄存器操作数为源操作数,D=1 寄存器操作数为目标操作数。
三、实验步骤(一)1、用试探法结论:操作码字节前六位为000000(二进制)看来是一条ADD指令,而且只占两个字节。
记下来:指令码汇编指令---------------------------------------------------------------------037F:0100 0000 ADD [BX+SI],AL2、将指令首字节变为01,重复以上实验结论:第1字节由00(二进制0000 0000)变为01(二进制0000 0001),ADD指令的第二个操作数由AL变为了AX。
AL为8位寄存器、AX为16位寄存器,印证了W字段的作用,增加一条有用的记录:指令码汇编指令-------------------------------------------------------------------------037F:0100 0000 ADD [BX+SI],AL037F:0100 0100 ADD [BX+SI],AX3、将指令首字节变为02,重复以上实验第1字节由00(二进制0000 0000)变为02(二进制0000 0010),ADD 操作的传送方向发生转变,印证了D字段的作用。
增加一条记录:指令码汇编指令------------------------------------------------------------------------037F:0100 0000 ADD [BX+SI],AL037F:0100 0100 ADD [BX+SI],AX037F:0100 0200 ADD AL,[BX+SI]4、将指令首字节变为03,重复以上实验D和W同时变化,记下:指令码汇编指令-----------------------------------------------------------------------037F:0100 0000 ADD [BX+SI],AL037F:0100 0100 ADD [BX+SI],AX037F:0100 0200 ADD AL,[BX+SI]037F:0100 0300 ADD AX,[BX+SI](二)1、首字节为04~07,继续实验(1)首字节为04,继续实验(2)首字节为05,继续实验(3)首字节为06,继续实验(4)首字节为07,继续实验-得到四条新的记录,出现了第1个3字节指令050000(ADD AX,0000),还捕获了两条新的单字节指令:指令码汇编指令----------------------------------------------------------------------037F:0100 0000 ADD [BX+SI],AL037F:0100 0100 ADD [BX+SI],AX037F:0100 0200 ADD AL,[BX+SI]037F:0100 0300 ADD AX,[BX+SI]037F:0100 0400 ADD AL,00037F:0100 050000 ADD AX,0000037F:0100 06 PUSH ES037F:0100 07 POP ES2、08~0b,继续-是四条OR指令:指令码汇编指令--------------------------------------------------------------------037F:0100 0000 ADD [BX+SI],AL037F:0100 0100 ADD [BX+SI],AX037F:0100 0200 ADD AL,[BX+SI]037F:0100 0300 ADD AX,[BX+SI]037F:0100 0400 ADD AL,00037F:0100 050000 ADD AX,0000037F:0100 06 PUSH ES037F:0100 07 POP ES037F:0100 0800 OR [BX+SI],AL037F:0100 0900 OR [BX+SI],AX037F:0100 0A00 OR AL,[BX+SI]037F:0100 0B00 OR AX,[BX+SI](三)1、用in1-zsl.txt生成out1-zsl.txt原理:用DOS的输入/输出重定向功能,让debug自动执行一批命令。
8088实验系统操作指导手册

第一章软件安装操作系统的安装1.概述本章介绍如何安装 Dais-IDE。
事先请确认您的计算机已安装 Microsoft Windows 95/98 操作系统。
Dais-IDE 集成开发环境由4张或6或8张 1.44MB 软盘(注)组成。
安装前,请将其安全备份以防万一。
注:Dais-IDE 分为仿真专用版和仿真实验综合版两个版本,前者为 4 张软盘,适用于 Dais-52.196P/52.196/8052F 仿真器;后者为 6 张软盘,适用于Dais-80958B实验系统及52.196P/52.196/8052F仿真器。
两个版本的唯一不同之处是仿真实验综合版为 Dais-80958B 实验系统增加了 Intel 8088 的实验调试模块。
1.2 Windows 操作系统的使用Dais-IDE for Windows 是 32 位 Windows 应用程序,安装在 Windows 95/98 操作系统上使用。
如果您对使用 Windows的菜单、对话框、滚动条或编辑框有疑问,请参考 Microsoft Windows 操作系统的用户手册第二章使用入门2.1 概述本章介绍以下内容:·如何启动 Dais-IDE 集成开发环境。
·如何通过 Dais-IDE 让计算机与仿真器联机。
·如何使用 Dais-IDE 集成开发环境。
2.2 Dais-IDE的启动和s退出启动:一旦正确安装 Dais-IDE,您只需把鼠标指向“开始/程序/启东达爱思仿真开发系统”程序组,选择所要运行的软件便可启动程序。
退出:Dais-IDE 可以从“文件/退出”命令退出集成环境,或单击屏幕右上角的按钮,也可直接按 Alt+X 退出。
2.3 计算机与仿真器联机当启动调试软件或在使用软件过程中出现通讯错误:主要有以下几个原因:⑴仿真器与计算机没有连接;⑵仿真器的电源没有打开;⑶仿真器连接的实际串行口及软件设置不一致;⑷软件已被病毒感染。
8086_8088_汇编_指令_手册

8086 8088 汇编指令手册通用寄存器(1)数据寄存器数据寄存器共有4个寄存器AX、BX、CX、DX,用来保存操作数或运算结果等信息。
AX寄存器称为累加器。
使用频度最高,用于算术、逻辑运算以及与外设传送信息等。
BX寄存器称为基址寄存器。
常用于存放存储器地址。
CX寄存器称为计数器。
一般作为循环或串操作等指令中的隐含计数器。
DX寄存器称为数据寄存器。
常用来存放双字数据的高16位,或存放外设端口地址。
(2)变址和指针寄存器变址和指针寄存器包括SI、DI、SP、BP 4个16位寄存器,主要用于存放某个存储单元的偏移地址。
SI是源变址寄存器。
DI是目的变址寄存器,在字符串操作中,SI和DI都具有自动增量或减量的功能。
SP为堆栈指针寄存器,用于存放当前堆栈段中栈顶的偏移地址。
BP为基址指针寄存器,用于存放堆栈段中某一存储单元的偏移地址。
2.段寄存器8086 CPU的4个16位的段寄存器分别称为代码段寄存器CS,数据段寄存器DS,堆栈段寄存器SS,附加数据段寄存器ES。
段寄存器用来确定该段在内存中的起始地址。
代码段用来存放程序的指令序列。
CS存放代码段的段首址,指令指针寄存器IP指示代码段中指令的偏移地址。
3.指令指针8086 CPU中的指令指针IP,它总是保存下一次将要从主存中取出指令的偏移地址,偏移地址的值为该指令到所在段段首址的字节距离。
在目标程序运行时,IP的内容由微处理器硬件自动设置,程序不能直接访问IP,但一些指令却可改变IP的值,如转移指令、子程序调用指令等。
3.1 标志寄存器8086 CPU中有一个很重要的16位标志寄存器,它包含9个标志位,主要用于保存一条指令执行后,CPU所处状态信息及运算结果的特征。
条件标志(1)进位标志CF (2)零标志ZF (3)符号标志SF (4)溢出标志 OF(5)奇偶标志 PF (6)辅助进位标志AF状态控制标志(1)方向标志DF (2)中断允许标志IF (3)追踪标志TF运算结果标志位1、进位标志CF(Carry Flag)进位标志CF主要用来反映运算是否产生进位或借位。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一章软件安装操作系统的安装1.概述本章介绍如何安装 Dais-IDE。
事先请确认您的计算机已安装 Microsoft Windows 95/98 操作系统。
Dais-IDE 集成开发环境由4张或6或8张 1.44MB 软盘(注)组成。
安装前,请将其安全备份以防万一。
注:Dais-IDE 分为仿真专用版和仿真实验综合版两个版本,前者为 4 张软盘,适用于 Dais-52.196P/52.196/8052F 仿真器;后者为 6 张软盘,适用于Dais-80958B实验系统及52.196P/52.196/8052F仿真器。
两个版本的唯一不同之处是仿真实验综合版为 Dais-80958B 实验系统增加了 Intel 8088 的实验调试模块。
1.2 Windows 操作系统的使用Dais-IDE for Windows 是 32 位 Windows 应用程序,安装在 Windows 95/98 操作系统上使用。
如果您对使用 Windows的菜单、对话框、滚动条或编辑框有疑问,请参考 Microsoft Windows 操作系统的用户手册第二章使用入门2.1 概述本章介绍以下内容:·如何启动 Dais-IDE 集成开发环境。
·如何通过 Dais-IDE 让计算机与仿真器联机。
·如何使用 Dais-IDE 集成开发环境。
2.2 Dais-IDE的启动和s退出启动:一旦正确安装 Dais-IDE,您只需把鼠标指向“开始/程序/启东达爱思仿真开发系统”程序组,选择所要运行的软件便可启动程序。
退出:Dais-IDE 可以从“文件/退出”命令退出集成环境,或单击屏幕右上角的按钮,也可直接按 Alt+X 退出。
2.3 计算机与仿真器联机当启动调试软件或在使用软件过程中出现通讯错误:主要有以下几个原因:⑴仿真器与计算机没有连接;⑵仿真器的电源没有打开;⑶仿真器连接的实际串行口及软件设置不一致;⑷软件已被病毒感染。
对于⑴⑵⑷的错误,只要在硬件上检查一下,或用杀毒软件清除病毒即可。
对于第⑶种错误,请单击“No”进入主界面,再打开“设置/通讯端口选择”菜单,选择与硬件实际连接的端口后,单击“确定”按钮即可:步骤一:打开“设置/通讯端口选择”菜单步骤二:选择与仿真器实际连接的端口并确步骤三:经过以上设置后请执行“设置/重新连接”命令,大约在 4 秒后如果没有出现“仿真器没有连接”的对话框,同时软件没有停止响应,则表明通讯成功。
第三章基本调试技巧3.1 概述由于 Dais-IDE 的 MCS-51&196 仿真系统及 8088 实验系统软件界面与操作命令基本一致,本手册将以 MCS-51 为例对软件的操作方法进行说明,MCS-196 和8088 部分的不同之处将另加解释,请您在使用时注意。
3.2 仿真模式的选择在调试程序前您必须设置仿真模式,其中包括仿真CPU、RAM 与 ROM 的选择等。
具体操作是打开“设置/仿真模式”对话框,当完成仿真模式的设置后单击“确认”。
3.3 编译调试程序进行源程序调试,必须事先生成符号化的调试代码。
Dais-IDE 提供了这一步骤的集成开发环境(IDE:Integrated Devel-opment Environment)。
您只要通过选择菜单项便可轻松创建、打开、编辑、编译调试程序。
以下简要介绍如何使用 Dais-IDE 编译单个源文件和工程组,详细内容请参阅“第四章调试程序的编译”。
打开“文件”菜单的“新文件”或“打开文件”命令。
在输入或打开源文件后用“编译/编译、连接、装载”命令将源文件编译成调试代码并自动打开调试窗口进入源文件调试。
或者选择“工程”菜单的“新建”或“打开”命令。
在弹出的列表框中打开已建立的工程或输入新建工程文件名。
然后使用“工程/编辑”在工程编辑对话框中增加或删除工程文件列表中的文件。
当建立工程并已编写好程序后选择“编译/项目编译、连接、装载”命令将整个工程编译后自动装载。
3.4 装载代码执行“编译/装载”菜单命令或单击工具栏上的装载按钮,然后在弹出的文件列表对话框中用鼠标点击或直接键入目标代码文件名(扩展名为*.OMF、*.HEX、*.BIN、*.OBJ、*.O的文件),单击“打开”按钮,代码即装入到程序存储器内。
3.5 调试窗口的使用Dais-IDE 支持源程序调试。
在调试窗口中,您可查看源代码、反汇编代码、设置断点、开始或终止仿真以及对源程序进行单步操作及检查变量等。
执行“视图/调试”菜单命令即开启程序调试窗口。
详细内容参见第五章。
3.6 用户程序的运行3.6.1 断点/连续运行在程序调试窗口下选择“调试/连续运行”菜单命令或单击工具栏上的命令按钮便开始连续运行。
当程序遇到在所设置的断点即停下,当设置多个断点时再次执行此命令,程序会在下一个断点处停下。
当未设置断点时,程序以连续方式运行。
3.6.2 单步运行/自动单步逐步执行用户指令,当遇到有子程序调用的指令时,则跟踪进入该子程序运行。
“调试/自动单步”命令以连续单步方式运行程序。
3.6.3 宏单步运行/自动宏单步此命令与单步相仿。
不同的是当遇到有子程序调用的指令时,一步运行完整个过程。
“调试/自动宏单步”命令以连续宏单步方式运行程序。
3.7 查看存储器在仿真过程中需要查看或修改存储器值时,可以执行“视图/存储空间”菜单命令以打开存储器窗口。
Dais-IDE 允许同时打开 2 个存储器窗口,使您可方便地观察程序不同区域的存储器。
详细请参阅第九章所述内容。
3.8 查看寄存器需要查看和修改寄存器值时,可以执行“视图/寄存器”菜单命令以打开寄存器窗口。
另外,Dais-IDE 的寄存器窗口允许您自行增加寄存器窗口中未列出的寄存器,也可删除列在寄存器窗口的寄存器。
详细内容请参阅第八章。
3.9 查看变量在仿真调试过程中使用变量窗口便可以监控某些符号参数、变量等。
首先选择“视图/变量”菜单命令打开变量窗口,然后在变量窗口中单击右键打开快捷菜单,执行菜单中的“增加”命令,在增加变量对话框中填入所要查看的变量名并单击“OK”。
详细内容请参阅第十章。
第四章调试程序的编译4.1 概述本章向您介绍如何使用集成开发环境(IDE)对单个源程序及工程组进行编译、连接。
4.2 IDE的使用4.2.1 什么是 IDEIDE,是 Intergrated Development Environment(集成开发环境)的缩写。
使用 IDE,您可以轻松地创建工程,并可通过其良好的界面来编译或编辑工程,以生成下载至 Dais 仿真器中的调试程序文件。
4.2.2 源文件的建立和打开建立新文件执行“文件/新文件”菜单命令或单击工具栏按钮即出现一个源文件编辑窗口,您可以在编辑窗口中输入源程序代码,完成后用“文件/存储”命令将文件存到磁盘上。
如果源文件是新建立的,Dais-IDE 则会弹出文件列表框要求您输入要保存的文件名,再单击“保存”即可。
打开一个文件执行“文件/打开文件”菜单命令或单击工具栏按钮即出现打开文件列表框,您可用鼠标直接点击显示在列表框内的文件名或者,也可在输入框内直接输入,再单击“打开”按钮,屏幕即出现一个文件编辑窗口,显示您选取的文件内容。
编译单个源程序文件当您已经建立或打开了的一个源程序文件,您就可以使用“编译/文件编译、连接、装载”命令或单击工具栏按钮即可对当前源文件进行编译、连接,如果源文件存在错误,即弹出“编译连接产生错误”对话框,单击“OK”,编译错误信息便出现在“编译连接信息”窗口,双击错误信息行,光标便自动跳转到源文件编辑窗口的出错行,以便您进行修改。
如果源程序文件没有错误,即弹出“编译、连接成功”对话框。
4.2.3 创建和打开工程组创建新工程组选择“工程/新建”菜单命令可创建新的工程组。
然后,在弹出的对话框中输入工程名(缺省扩展名为 "*.prj"),为工程取名后单击“打开”便进入编辑工程对话框,您就可以用“增加”命令选取工程组所需的程序文件了。
打开工程组您也可以用“工程/打开”命令或单击工具栏按钮打开已建立的工程文件。
编译工程组工程组的编译与单个源文件的编译操作一致。
即打开“编译/项目编译、连接、装载”命令或单击工具栏按钮即可。
如果想要对工程组中的某个源程序文件进行编辑,请打开“工程/文件列表”,在“文件列表”框内选取一个源文件后单击“确认”,被选取的源文件即出现在编辑窗口。
4.4 设定编译选项选择“编译/编译选项”菜单命令,弹出编译选项对话框,在这里可设定编译连接器、库文件等编译选项。
4.4.1 MCS-51 软件编译选项◆ MCS-51 编译选项对话框汇编语言页·寄存器组选取源文件中说明的子程序使用的寄存器组种类。
·命令行其它参数未在本页中列出,但编译器支持其他参数。
参数间用空格分开。
注意:命令行参数请参阅 Franklin/Keil 编译器资料。
◆ MCS-51 编译选项对话框 C语言页·寄存器组选取源文件中说明的子程序使用的寄存器组种类。
·编译选项SMALL:数据和堆栈都在内部 RAM 中。
所有函数和过程变量及局部数据段被定义在 8051 系统内部数据存储器,因此以这种模式访问数据对象是非常有效的。
这种模式的缺点是地址空间有限。
COMPACT:堆栈在内部 RAM 中,数据在 0~FFh 的 256 字节 XRAM 中,用 MOVX @R0 访问。
所有函数和过程变量及局部数据段被定义在 8051 系统外部数据存储器中,这个存储器可达 256 字节(1页)。
这种模式使用访问外部数据存储器的简洁形式(@R0/R1)。
LARGE:堆栈在内部 RAM 中,数据在0~FFFFh 的64K XRAM 中,用 MOVX @DPTR 访问。
所有变量和局部变量数据段定义在 8051 系统的外部数据存储器中,可访问达64K 字节的地址空间。
因此,它需要通过数据指针(DPTR),这是一种效率不高的数据访问形式。
·优化设置OPTIMIZE指令设置优化级,在这种设置中,高一级的优化级包含前一级较低的优化级的设置。
OPTIMIZE (0)常数折叠:编译时只要有可能,编译器就执行包含常数的计算,包括执行地址计算。
简单访问化:对8051系统内部数据和地址进行访问优化。
跳转优化:编译器总是将跳转延迟至最终目标上,因此跳转到跳转的指令被消除。
OPTIMIZE (1)死码消除:无用的代码将被消除。
跳转否决:根据一个测试反馈,条件转移被仔细检查,以决定是否能够进行简化或消除。
OPTIMIZE (2)数据覆盖:适用于静态覆盖的数据和位段被鉴别并标记出来。
L51有这样一个功能,通过对全局数据流的分析,选择可静态覆盖的段。