周明德微机原理及应用03.ppt

周明德微机原理及应用03.ppt

ID:51499650

大小:2.15 MB

页数:114页

时间:2020-03-25

周明德微机原理及应用03.ppt_第1页
周明德微机原理及应用03.ppt_第2页
周明德微机原理及应用03.ppt_第3页
周明德微机原理及应用03.ppt_第4页
周明德微机原理及应用03.ppt_第5页
资源描述:

《周明德微机原理及应用03.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、3.1基本数据类型x86系列处理器的基本数据类型:字节:8位字:16位双字:32位四字:64位双四字:128位如图3-1所示。第3章8086指令系统地址地址地址地址地址图3-2显示了基本数据类型作为内存中的操作数引用时的字节顺序。内存是按字节编址的(每个字节有一个地址号码)。各基本数据类型的地址用最低字节的地址表示。低字节(位0至位7)占用内存中的最低地址,该地址也是此操作数的地址。称之为“小端优先(小印地安型)”3.1.1字、双字、四字和双四字的对齐自然边界:字的自然边界是偶数编号的地址;双字的自然边界地址能被4除尽;四字的自然边界能被8除尽。字、双字和四字在内存中并不需要

2、对齐至自然边界。然而,为了改进程序的性能,数据结构(特别是堆栈)只要可能就应该在自然边界上对齐。因为对于不对齐的存储访问,处理器要求做两次存储访问操作;而对于对齐的访问,只要进行一次存储访问操作。3.1.2数字数据类型虽然字节、字和双字是IA-32结构的基本数据类型,但某些指令对这些数据类型的附加解释允许在数字数据类型(带符号的或无符号整数和浮点数)上操作。这些数字数据类型如图3-3所示。符号位阶码尾数(1)无符号整数无符号整数是包含字节、字、双字和四字中的无符号的二进制数。它们的值的范围,对于字节是从0到255;对于字,从0到65535;对于双字,从0到232-1;对于四字

3、,从0到264-1。无符号整数有时作为原始数引用。(2)符号整数符号整数是保存在字节、字、双字或四字中的带符号的二进制数。对于符号整数的所有操作都假定用2的补码表示。符号位定位在操作数的最高位(见表3-1中符号整数编码)。1.整数负数的符号位为1,正数的符号位为0。整数值的范围,对于字节,从-128到+127;对于字从-32768到+32767;对于双字,从-231到+(231-1);对于四字,从-263到+(263-1)。2.浮点数据类型IA-32结构定义和操作三种浮点数据类型:单精度浮点数、双精度浮点数和扩展的双精度浮点数(见图3-3)。这些数据类型的数据格式与IEEE标

4、准754二进制浮点算术所规定的格式直接对应。3.1.3指针数据类型指针是内存单元的地址。IA-32结构定义两种类型的指针:近(near)指针(32位)near指针是段内的32位偏移量(也称为有效地址)。Near指针在平面存储模式中用于所有存储器引用;或在分段存储模式中用于同一段内的存储器引用。远(far)指针(48位)。far指针是一个48位的逻辑地址,包含16位段选择子和32位的偏移量。far指针用于在分段存储模式中的跨段存储引用。3.1.4位字段数据类型一个位字段(见图3-5)是连续的位序列。它能在内存中任何字节的任一位位置开始并能包含最多至32位。3.1.5串数据类型串

5、是位、字节、字或双字的连续序列。位串能从任一字节的任一位开始并能包含多至232-1位。字节串能包含字节、字或双字,其范围能从0至232-1字节(4GB)。3.28086的指令格式8086汇编语言指令有以下格式:label:mnemonicargument1,argument2,argument3标号:助记符参数1,参数2,参数3ABC:ADDAX,BX(1)标号(label)是一个标识符后面跟有冒号;(2)助记符(mnemonic)是一类具有相同功能的指令操作码的保留名;(3)操作数参数1(argument1)、参数2(argument2)和参数3(argument3)是任选

6、的,可以有零到三个操作数。3.38086指令的操作数寻址方式操作数在哪?8086机器指令有零个或多个操作数。某些操作数是显式规定的,有的是指令中隐含的。一个操作数能定位在以下之一中:(1)指令(立即数);(源)(2)寄存器;(源或目标)(3)存储单元;(源或目标)(4)I/O端口。(源或目标)根据操作数的不同定位,需要采用相应的寻址方式。3.3.1立即数寻址方式某些指令用包含在指令中的数据作为源操作数,这些操作数称为立即操作数(或简称为立即数)。这种寻址方式如图3-6所示。示例:MOVAX,143.3.2寄存器操作数寻址方式源和目的操作数能在以下寄存器中,取决于正在执行的指令

7、:(1)16位通用寄存器(AX、BX、CX、DX、SI、DI、SP或BP);(2)8位通用寄存器(AH、BH、CH、DH、AL、BL、CL或DL);(3)段寄存器(CS、DS、SS、ES、FS和GS);(4)EFLAGS寄存器;示例:MOVBX,AX3.3.3存储器操作数寻址方式在内存中的源和目的操作数由段选择子和偏移量引用(见图3-8)。段选择子规定包含操作数的段;偏移量(从段的开始至操作数的第一个字节的字节数)规定操作数的线性或有效地址。对于8086CPU,物理地址的计算为:物理地址=段选择子16

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。