- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第二章寄存器(CPU工作原理)(上)
第二章 寄存器 (CPU工作原理) 要点: CPU的组成 寄存器 字在寄存器中的存储 简单的汇编指令 物理地址和8086形成物理地址的机制 段的概念和段寄存器 Debug调试工具 CPU的组成 算术逻辑部件ALU:进行算术和逻辑运算 控制逻辑:控制各种器件进行工作 工作寄存器:用来存放计算过程中所需要的或得到的各种信息 内部总线:连接各种器件,进行数据的传送。 寄存器 8086/8088CPU的寄存器有4类: 数据寄存器:AX、BX、CX、DX 指针及变址寄存器:SP、BP、SI、DI 段寄存器:CS、DS、SS和ES 控制寄存器:IP和Flags 数据寄存器 也称为通用寄存器,均为16位,包括AX,BX,CX和DX。 16位寄存器的逻辑结构 4个16位寄存器又可分割成8个独立的8位寄存器 思考: 一个16位寄存器能存储的最大数据? 一个8位寄存器能存储的最大数据? 数据寄存器(续) AX (Accumulator),用累加器进行的操作可能需要更少时间。累加器可用于乘、除、输入/输出等操作; BX称为基地址寄存器(Base Register),可作通用寄存器用,在计算存储器地址时,常用作基址存储器; CX称为计数寄存器(Count Register),常用作循环计数器;在位操作中,要用CL来指明移位的位数; DX称为数据寄存器(Data Register)。在进行双字的乘、除运算时,它可作为默认的操作数参与运算,也可用于存放I/O的端口地址。 字在存储器中的存储 字:word,一个字由2个字节组成 一个字节可以存放在8位寄存器中 一个字可以存放在一个16位寄存器中,高位字节放于高8位寄存器中,低位字节放于低8位寄存器中。 如20000存放到AX中:0100111000100000 AH中为4EH,AL中为20H 几条汇编指令 指令格式:操作码 操作数,…,操作数 操作码:计算机所要执行的操作 操作数:在指令执行操作的过程中所需要操作的对象 mov指令:数据传送指令, 2地址指令 add指令:算术指令,2地址指令 注意:在进行数据传送或算术运算时,指令的两个操作对象的位数应当一致! 作业 检测点2.1 汇编语言上机环境介绍 编程环境Masm(以后再用),调试工具Debug Debug是DOS、Windows都提供的实模式程序的调试工具。可以用来查看CPU各种寄存器的内容、内存的情况和在机器码级跟踪程序的运行 进入Debug 还有其他的调试工具:CodeView , Turbo Debuger Debug命令 R命令:查看、改变CPU寄存器的内容 D命令:以16进制形式显示一块内存区域的内容 E命令:改写内存中的内容 A命令:以汇编指令的格式在内存中写入一条机器指令 U命令:将内存中的机器指令翻译为汇编指令 T命令:执行一条机器指令 Q命令:退出Debug 注意:在Debug中输入或显示的数据都是十六进制形式; 关于使用命令的几点说明 在Debug中的提示符“-”下才能输入命令,在按“回车”键后,该命令才开始执行 命令是单个字母,命令和参数的大小写可混合输入 可用F1、F2、F3、Ins、Del和光标移动键等来编辑本行命令 当命令出现语法错误时,将在出错位置显示“^ Error” 可用^C或^Break来终止当前命令的执行,还可用^S来暂停屏幕显示(当连续不断地显示信息时 R命令 A命令——写汇编指令 T命令——单步执行 首先检查CS寄存器和IP寄存器的内容 如果不一致使用R命令设置后,再运行T命令 上述命令参见:教材23页 实验1 本节小结 了解CPU的组成; 掌握各种寄存器,尤其是通用寄存器; 理解字在寄存器中的存储; 掌握几条简单的汇编指令 熟悉Debug调试工具,掌握3个Debug命令; * * 高位字节 低位字节 AX=18 AH=78 AX=AX+8 AX=BX AX=AX+BX 将18送入寄存器AX中 将78送入寄存器AH中 将寄存器AX中的数值加8 将寄存器BX中的数据送入AX 将AX和BX中的数值相加,存入AX中 mov ax,18 mov ah,78 add ax,8 mov ax,bx add ax,bx 高级语言语法描述 控制CPU完成的操作 汇编指令 操作数个数N,称为N地址指令,N为1,2,3 AX=044CH 进位“丢失” AX=0058H,进位“丢失”
文档评论(0)