




已阅读5页,还剩14页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第三部分第三部分 附录附录 附录附录 汇编语言上机操作步骤汇编语言上机操作步骤 一 一 在在 IBM PC 机上运行汇编源程序所必备的软件机上运行汇编源程序所必备的软件 TPC H 型十六位微机实验培训系统 要求用汇编语言来编写程序 为 了在 IBM PC 机上运行汇编源程序 机器上必须有 DOS 操作系统环境 DOS 系统盘 上必须有下列文件 EDIT COM 文件编辑程序 MASM EXE 宏汇编程序 CREF 交叉引用文件处理程序 LINK EXE 链接程序 LIB 库管理程序 DEBUG COM 调试程序 二 在二 在 IBM PC 机上运行汇编源程序的步骤机上运行汇编源程序的步骤 当用户编制好汇编语言源程序之后 要在机器上运行 必须经过以下几个步骤 1 1 用 用 EDITEDIT 命令建立与修改汇编源程序文件 命令建立与修改汇编源程序文件 ASMASM 文件 文件 源程序就是用汇编语言的语句编写的程序 它不能被机器识别 源程序必须以 ASM 为附加文件名 至于 EDIT 的使用方法可以查阅手册 2 2 用 用 MASMMASM 命令汇编源文件以产生相应的目标文件 命令汇编源文件以产生相应的目标文件 OBJOBJ 文件 文件 源程序建立以后 必须经过汇编 转换成用二进制代码表示的目标文件 机器 才可运行 汇编是通过调用 PC DOS 下的宏汇编程序 MASM 实现的 汇编过程中 汇编程序对源文件进行二次扫描 如果源程序中有语法错误 则汇编过程结束后 汇编程序会指出源程序中的错误 这时 用户可以再用编辑程序来修改源程序中 的错误 最后 得到没有语法错误的 OBJ 文件 3 3 用 用 LINKLINK 命令连接目标文件以产生可执行文件 命令连接目标文件以产生可执行文件 EXEEXE 文件 文件 由于汇编之后所得到的目标代码的存放地址并不是可执行的绝对地址 而是浮 动的相对地址 因而 必须经过连接 把程序的各个模块连接在一起 或把要调 用的子程序与主程序连接在一起 把相对地址变成绝对地址 形成可执行的文件 连接是由调用 PC DOS 下的 LINK 程序来实现的 4 4 调试 运行可执行文件 调试 运行可执行文件 经过以上过程 在盘上有了可执行文件 则可在 DOS 提示符下 直接打入文件 名 不用扩展名 就可以把执行文件从盘上装入内存 且立即执行此程序 然而通常一个较复杂 较长的汇编语言源程序 希望一点错误也没有的可能性 是很小的 这样就需要调用 PC DOS 支持下的 DEBUG 程序 来调试我们的目标程 微机原理及应用 一 实验指导书 1 序 被调试程序在 DEBUG 的管理下 可以单步执行程序 也可以设置断点 可以 显示和修改 CPU 内部寄存器和标志位的内容等 这样就便于寻找程序中的错误 在发现了错误以后 通常还要重复上述的编辑 汇编 连接和调试程序的全过 程 直至程序运行正确为止 已调试的目标程序 任何时候都可在 PC DOS 下 通过打入文件名即可运行它 上机过程示意图如下 汇编语言程序 编辑程序 汇编程序 连接程序 调试程 序 有错吗 运行程 序 Y N 图 13 汇编语言程序上机过程流程 为了便于操作 下面将上机操作全过程中的主要部分分别加以介绍 编辑程序 因为使用普遍 在此不做介绍 三 宏汇编程序三 宏汇编程序 微机原理及应用 一 实验指导书 2 经过编辑命令建立和修改后存盘的汇编语言源程序 扩展名为 ASM 要在机 器上运行 必须先由汇编程序把它汇编为机器码的目标程序 经过 IBM 汇编程序 汇编后的程序在盘上建立三个文件 一个是扩展名为 OBJ 的目标程序 在此程序 中 操作码部分已变为机器码 但操作数地址只是一个可浮动的相对地址 而不 是内存中的绝对地址 第二个是扩展名为 LST 的汇编列表文件 它把源程序 包 括注释 和汇编后的目标程序都制表 可以打印出来供检查用 第三个是扩展名 为 CRF 的符号交叉列表文件 可以对符号进行前后对照 在汇编时 汇编程序对 要不要建立这些文件 有如下提示 例如对 exam asm 文件进行汇编 在 DOS 状态下 打入 MASM 调用宏汇编程序 屏幕显示与操作如下 C MASM 此时 屏幕上出现如下信息 The IBM Personal Comporter MACRO Assemble 1 00 C Copyright IBM Corp 1981 Source filename ASM exam Object filename exam Obj Source Listing Nul 1st exam Cross reference Nul crf exam Warning Severes Errors Errors 0 0 从上面操作过程中可以见到 汇编程序的输入文件就是 用户编写的源程序 它必须以 ASM 为文件扩展名 在汇编调入后 先显示版本号 然后出现第一行提 示 询问要汇编的源文件名 用户输入文件名 则出现第二个提示 询问目标程 序的文件名 括号内的为机器规定默认的 default 文件名 通常直接按回车 表 示采用默认文件名 接着出现第三个提示 问是否要建立可打印文件 若要 打 入文件名 若不要 可直接回车 最后出现第四个提示 询问是否要建立交叉索 引文件 若需要则打入文件名 若不要直接回车 在回答了第四个询问后 汇编 程序就对源程序进行汇编 汇编过程结束时 如果程序有错误会给出源程序的警 告性错误 warning errors 和严重错误 severs errors 前者指出一般性错误 后者指出语法性错误 当存在这两类错误时 屏幕上除指出错误个数外 还给出 错误信息代号 程序员可以通过查代码手册弄清楚错误的性质 如果汇编过程中 发现有错误 则程序员应该重新用编辑命令修改错误 再进 行汇编 最终直到汇编正确通过 要指出的是汇编过程只能指出源程序中的语法 错误 并不能指出算法错误和其他错误 注意 汇编后建立的 CRF 文件是不能单独使用的 若需要了解源程序中的符 号 包括变量 在定义和引用时的情况 还要调用 CREF 文件对 CRF 文件进行处理 生成 REF 文件后 才能打印 或显示 输出 其过程如下 C CREF Cref filename CRF exam List filename exam REF 在 DOS 状态下 打入 CREF 就会调入交叉引用文件处理程序 CREF CREF 运行 时 首先询问要处理的文件名 在键入文件名后 出现第二个提示 询问 REF 文 件名 可用回车承认默认的 REF 文件名 于是就建立了一个扩展名为 REF 的文件 微机原理及应用 一 实验指导书 3 然后返回 DOS 状态 在 DOS 状态 用 TYPE 命令打印此文件 得如下显示信息 Symbol Cross Reference is definition Cref 1 BUF 8 16 CODE 12 1321 DATA 7 111314 STACK 1 613 START 14 22 其中 有 号者是此符号被定义时的语句行号 后面是引用此符号的语句行号 四 连接程序四 连接程序 Link Link 由汇编程序建立的目标码文件必须经过连接以后 才能成为可执行文件 连 接程序并不是专为汇编语言设计的 利用它可以把若干个模块连接在一起 这些 模块可以是汇编程序产生的目标码文件 也可以是其它高级语言编译程序产生的 目标文件 在连接过程中 又建立了几个文件 具体操作如下 以 exam obj 进行 连接为例 C LINK 此时 屏幕上出现如下信息 IBM 5552 multistation Linker 2 00 C Copyright IBM Corp 1985 Corp 1985 Object modules OBJ exam Run File exam EXE List File NUL MAP exam Libraries LIB Warning NOSTACK Segment 首先询问要连接的目标文件 操作员键入文件名作为回答 此处是 exam 如 果有多个要连接的目标文件 应一次键入 各目标文件名之间用 号隔开 第 二个提示询问要产生的可执行文件的文件名 一般直接回车就采用了括号内规定 的默认文件名 第三个提示询问是否要建立地址分配文件 键入文件名再回车表 示要建立 直接按回车键表示不要建立 最后询问是否用到库文件 如果没有库 文件 则直接键入回车即可 如果用户用到库文件 则键入库文件名 建立库文 件的方法见第五节 回答以上问题后 连接程序便开始进行连接 若连接过程有错 则显示错误信 息 若有错误就要重新调用编辑程序修改源文件 然后重新汇编 连接 直至无错 LINK 过程产生两个输出文件 一个是扩展名为 EXE 的执行文件 产生此文件 当然是 LINK 过程的主要目的 另一个是扩展名为 MAP 列表分配文件 有人也称它 为映象文件 它给出每个段在内存中的分配情况 比如某个列表分配文件为如下 内容 C TYPE exam Map Warning No STACK Segment Start Stop Length Name 微机原理及应用 一 实验指导书 4 00000H 0015H 0016H CODE 00020H 0045H 0026H DATA 00050H 0061H 0012H EXTRA Programe Entry point at 0002 0000 由上面看出 变量 CODE 的起始地址是 0000H 结束地址是 0015H 字节数是 16H 以此类推 另外从 LINK 过程提示信息中 可看到最后给出一个 无堆栈段 的警告性错 误 这并不影响程序的执行 当源程序中设置了堆栈段 则无此提示信息 五 子程序库的建立方法五 子程序库的建立方法 在处理比较复杂的问题时 往往需要把某些经常被反复调用的子程序汇编成目 标模块 集合在一起组成一个 子程序库 LIB 以方便调用 建立子程序库是调用 DOS 的库管理程序 LIB 来实现的 库管理程序 LIB 的启动 方式分为提问方式 命令方式 文件方式三种 此处仅介绍提问方式 在 DOS 状态 键入 LIB 之后 DOS 把 LIB 装入主存并向用户提问 用户 根据要求键入相应的回答 LIB 的提问信息及其回答如表 1 所示 回答时可用的命 令字符如表 2 所示 表表 1 1 LIBLIB 的提示信息及回答的提示信息及回答 提示信息 回 答 Library name Operation List file 欲进行操作的库名 缺省文件扩展名为 LIB 命令字符及模块名或目标文件名 交叉参考列表文件名 缺省 NUL 无交叉参考列表文 件 表表 2 2 库管理命令字符库管理命令字符 命令字符 功 能 另一种是用相应的 ASCII字符显示 句号 表示 不可显示的字符 如果取命令格式 D 后面无地址或范围参数 将从前次命令显示后的下一个单元开始显示 40H字节或80H字节的内容 如果取命令格式 D range 则显示指定地址范围各单元的内容 3 3 E E E En nt te er r 命命令令 用途 显示和修改存贮单元的内容 格式1 E address list 将内容表包括的数值和字符串的 ASCII码依次置入从指定地址开始的存贮单 元 例如 E DS 100 F3 XYZ 8D 从内存单元 DS 100H至DS 104H的5个单元中依次置入 F3H 1个单元 XYZ的 ASCII码 3个单元 和8DH 1个单元 格式 2 E address 显示指定地址单元的内容 并等待输入新的值 输入新的值的过程如下 输入一个字节的十六进制数 以替换原单元中的内容 然后采取下列三种操作 的一种 1 按空格键 则上一个替换要求完成 并且显示出下一个单元的地址和原有 的内容 如果想改变它 可直接输入要修改的值 再按空格键 这样 就 可以连续地进行修改 若某一单元的内容不需要修改 可直接按空格键 2 按 号键 将在下一行显示前一单元的地址和内容 如果想改变它 可直接输入要修改的值 然后再按 则又显示前一单元的地址和内容 这样就可连续地进行反向修改 若所示的前一单元的内容不需要修改 可 直接按 键 3 按回车键将结束 E 命令 命令参数中 地址 如果不指明段地址 则默认段地址为 DS 4 4 F File F File 命令命令 用途 在指定的存贮地址范围内置入内容表给出的数值或字符代码 格式 F range list 说明 如果 list 包含的字节少于 range 包括的单元数 则把 list 的字节重 复置入指定的地址区 直到指定的范围都置入新值为止 如果 list 包含的字节数 多于 range 包括的单元数 则多出的字节被忽略 如果 range 参数中不指明段地址 则默认段地址为 DS 例如 F4BA 100L5 F3 XYZ 8D 微机原理及应用 一 实验指导书 10 则从 04BA 100 至 04BA 104 的 5 个单元依次装入 F3 58 59 5A 8D 二二 汇编与反汇编命令汇编与反汇编命令 1 1 A Assemed A Assemed 命令命令 用途 先显示汇编的内存地址 等待用户输入一条助记符指令 用户输入指 令并按回车后 DEBUG 将把这条指令对应的机器码顺序存放在指定的内存单元中 并提示下一地址 等待用户继续输入下一条指令 若直接按回车 则退出 A 命令 若在输入指令时语句有错误 则显示出错信息 仍然提示当前的汇编地址 用户 可重新输入指令 格式 A address 说明 若没有指定地址 则从 CS 100 单元开始存放 2 U Unassemed 2 U Unassemed 命令命令 用途 对于存贮器内的指令机器码进行反汇编 结果显示的语句和源程序语 句会大部分相同 由于不能反汇编出标号 标识符等信息 所以与源程序语句有 些差别 但在调试程序时 这个命令常常用于对照机器码指令与源程序是否一致 格式 U address 或 U range 说明 反汇编过程产生的输出包括指令的开始地址 指令的机器码和指令的 源语句 例 U 从当前地址开始反汇编 也可以从某个地址处开始反汇编 例 U 200 从 CS 200 处开始反汇编 三三 运行命令运行命令 1 G Go G Go 命令命令 用途 执行正在调试的程序 格式 G address address address 说明 等号及第一个 address 参数指明程序执行的起点 后面的一个或多个 address 参数是设定的断点 这个命令可取以下三种格式 1 G 不打入任何参数 这时从当前指令 即从 CS IP 指定的地址开始执行 并一直执行下去 2 G address 打入等号和程序执行的起始地址 程序开始执行后一直执行下 去 3 G address address address 这种格式意味着起始地址可取 1 或 2 的规定 可设一个或多个断点地址 DEBUG 程序中允许最多可设置 10 个断点 这些断点地址的次序是任意的 所谓断点是指程序执行到这个地址时立即停止 并显示 CPU 内部所有寄存器的内容以及全部标志位的状态和一条将执行的指令 主程序有两个或多个分支时 可以在每个分支上设置一个断点 这样可以观察每 个分支执行的情况 为此可以在 G 命令中设置多个断点 当然在一次运行时 只 能停在其中的一个断点上 程序员心中确定了断点地址后 就可以用 G 命令来设 置断点 比如 想把断点设置在 0120H 处 则打人命令 G0120 此时 程序在 0120H 处停下 并显示出所有寄存器以及各标志位的当前值 在 最后一行还给出下一条将要执行的指令地址 机器语言和汇编语言 程序员可以 从显示的寄存器的内容来了解程序运行是否正确 2 2 T Trace T Trace 命令命令 微机原理及应用 一 实验指导书 11 用途 执行一条或多条指令 每执行一条指令将显示所有寄存器的内容和状 态标志位的状态 格式 T address Value 说明 等号及 address 参数指明执行的开始地址 Value 参数指明执行指令的条数 例如 T3 从当前地址往下执行三条指令 2 2 P Process P Process 命令命令 用途 执行子程序调用 或一个循环指令 或一个中断指令 或一个重复字符串 指令 在下一个指令时停止 格式 P address value 说明 当调用一个子程序 一个循环指令 一个中断或一个重复字符串指令时 发进程命令 P 去执行这些指令 作为一个自动操作 在下一个指令时控制返回 注 P 命令与 T 命令的区别是 当执行的指令是子程序调用或一个循环指令 一个 中断或一个重复字符串指令时 P 命令是一次执行到这个进程的结束 而 T 命令则 仍然是一次执行一条语句命令 对于执行其他单条指令时 它们是一样的 3 3 Q Quit Q Quit 命令命令 用途 结束并退出 DEBUG 程序 格式 Q 说明 Q 命令不包括把文件写回磁盘操作 它只是返回到启动 DEBUG 之前的状态 微机原理及应用 一 实验指导书 12 附录附录 TPC HTPC H通用微机实验系统使用说明通用微机实验系统使用说明 一 一 TPC HTPC H 型实验台结构型实验台结构 TPC H 型微机实验系统为单板式结构 结构图如图 5 所示 图 5 TPC H 型微机实验台结构 微机原理及应用 一 实验指导书 13 图 6 I O 地址译码电路 图 7 时钟电路 图 8 逻辑电平开关电路 图 9 LED 显示电路 微机原理及应用 一 实验指导书 14 图 10 七段数码管显示电路 图 11 单脉冲电路 图 12 逻辑笔电路 图 13 继电器及驱动电路 图 14 复位电路 微机原理及应用 一 实验指导书 15 图 15 数 模转换器 DAC0832 电路图 图 16 模 数转换器 ADC0809 电路 1 1 I OI O 地址译码电路地址译码电路 如图 6 所示 这里选用 PC 机未用的地址空间 280H 2BFH 共 8 条译码输出线 Y0 Y7 其地址分别是 280H 287H 288H 28FH 290H 297H 298H 29FH 2A0H 2A7H 2A8H 2AFH 2B0H 2B7H 2B8H 2BFH 8 根译码输出线在实验台上标有 I O 地址 处分别 由 自锁紧 插孔引出 供实验用 2 2 总线插孔 总线插孔 采用 自锁紧 插座在标有 总线 区引出数据总线 D7 D0 地址总线 A9 A0 读 写信号 IOR IOW 中断请求信号 IRQ DMA 请求信号 DRQ1 DMA 响 应信号 DACK1 及 AEN 信号 供学生搭制各种接口实验电路使用 3 3 时钟电路 时钟电路 如图 7 所示 可以输出 1MHZ 2MHZ 两种信号 供 A D 转换器 定时器 计数器 串行接口实验使用 微机原理及应用 一 实验指导书 16 4 4 逻辑电平开关电路 逻辑电平开关电路 如图 8 所示 实验台下方设有 8 个开关 K7 K0 开关向上拨到 1 位置时开 关开 输出高电平 向下打到 0 位置时开关接通 输出低电平 电路中串接了 保护电阻 使接口电路不直接同 5V GND 相连 可有效的防止学生因误操作 误 编程损坏集成电路现象 5 5 LEDLED 显示电路显示电路 如图 9 所示 实验台上设有 8 个发光二极管及相关驱动电路 输入端 L7 L0 当输入信号为 1 时发光 为 0 时熄灭 6 6 七段数码管显示电路 七段数码管显示电路 如图 10 所示 实验台上设有两个共阴极七段数码管及驱动电路 段码为同相 驱动器 位码为反相驱动器 从段码与位码的驱动器的输入端 段码输入端 a b c d e f g dp 位码输入端 S1 S2 输入不同的代码即可显示不同 数字或符号 7 7 单脉冲电路 单脉冲电路 如图 11 所示 采用 RS 触发器产生 实验者每按一次开关即可从两个插座上分 别输出一个正脉冲及负脉冲 供 中断 DMA 定时器 计数器 等实验使用 8 8 逻辑笔 逻辑笔 如图 12 所示 当输入端 Ui 接高电平时红灯 D2 亮 接低电平时绿灯亮 9 9 继电器及驱动电路 继电器及驱动电路 如图 13 所示 实验台上设有一个 5V 直流继电器及相应得驱动电路 当其开 关量输入端输入数字量 1 时 继电器动作 常开触点闭合 常闭触点断开 通 过相应得实验使学生了解开关量控制的一般原理 1010 复位电路 复位电路 如图 14 所示 能在上电时 或按下复位开关 S2 后产生一个高电位的复位信号 供 8255 8251 等接口芯片使用 1111 接口集成电路 接口集成电路 实验台上由微机原理硬件实验最常用的接口电路芯片 包括 可编程定时器 计数器 8253 可编程并行接口 8255 数 模转换器 DAC0832 模 数转换 器 ADC0809 这里芯片与 CPU 相连的引线除片选信号 CS 外都已连好 与外界连 接的关键引脚在芯片周围用 自锁紧 插座引出 供学生实验时使用 在本实验 系统中未用到的引脚 如 8255 的 PB0 PB7 8253 的 CLK2 GATE2 OUT2 ADC0809 的 IN3 IN7 都用小圆插孔引出 实验时可用单股导 线引出 另外 数 模转换器附有双极性输出 模 数转换器附有双极性输入插座 具体电路可见下面各 实验说明 1212 跳线开关 跳线开关 JPJP 实验台上共有 3 个跳线开关 其中 JP1 用于 I O 实验与 DMA 实验选择 1 2 微机原理及应用 一 实验指导书 17 短路时实验台用于 I O 实验 2 3 短路时用于 DMA 实验 JP2 JP3 分别用于模 数转换器模拟量输入极性选择 将 JP2 的 1 2 短路时 IN2 J2 可输入双极性电 压 5V 5V 2 3 短路为单极性 0 5V JP3 用于选择 IN1 的输入极性 方法与 JP2 相同 JP1 JP2 JP3 在实验台上的位置请参看实验台结构图 1313 5V 5V 电源插针电源插针 为了减少主机电源的负担和各主要芯片的安全 在主要接口芯片的左上角都有 相应得电源连接插针 标记为 5V 当实验需要该芯片时 用短路块短接插针即 可接通 5V 电源 对用不到的芯片可将短路块拔掉以确保芯片安全 1414 通用集成电路插座 通用集成电路插座 实验台上设有 4 个通用数字集成电路插座 其中插座 A C 为 14P 插座 B 为 16P 插座 D 可以插一个 24 40 脚的集成电路芯片或者 2 个 8 20 脚的集成电路 芯片 每个插座引脚附近都有对应得 自锁紧 插孔 部分实验 简单并行接口 DMA 串行通讯 集
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安置房项目施工进度管控方案
- 帐无忧:智能财税管理解决方案
- 校园安全教育板面设计
- 储能电站监控与控制系统方案
- 解析2025年互联网金融平台合规化进程中的风险管理报告
- 离婚协议中财产赠与及子女抚养费及财产分配协议
- 高端商业综合体精装商铺使用权租赁合同
- 文化创意产业合伙协议退伙知识产权保护
- 旅游产品销售合同签订与客户安全保障协议
- 离婚补充协议孩子抚养费变更及保障措施合同
- 发展汉语-初级读写-第一课-你好
- 韩国《寄生虫》电影鉴赏解读
- 人教版四年级数学上册《课堂作业设计》全套
- TTT系列课程-结构化思考力
- Cpk 计算标准模板
- 封起DE日子博文 2006
- 锂离子电池生产安全讲座
- 眼科学-眼科检查(课件)
- 产品碳足迹课件
- 部编人教版六年级道德与法治上册全册教学课件
- 美国地图高清中文版
评论
0/150
提交评论