Intel处理器指令系统及汇编语言.ppt

Intel处理器指令系统及汇编语言.ppt

ID:52267418

大小:421.51 KB

页数:39页

时间:2020-04-03

Intel处理器指令系统及汇编语言.ppt_第1页
Intel处理器指令系统及汇编语言.ppt_第2页
Intel处理器指令系统及汇编语言.ppt_第3页
Intel处理器指令系统及汇编语言.ppt_第4页
Intel处理器指令系统及汇编语言.ppt_第5页
资源描述:

《Intel处理器指令系统及汇编语言.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、数据定义语句类型用途类型用途BYTE8位无符号整数FWORD48位整数(可在保护模式下用作远指针)SBYTE8位有符号整数QWORD64位整数WORD16位无符号整数(可在实模式下用作近指针)TBYTE80位整数SWORD16位有符号整数REAL432位IEEE短实数DWORD32位无符号整数(可在保护模式下用作近指针)REAL864位IEEE长实数SDWORD32位有符号整数REAL1080位IEEE扩展精度实数早期版本:DB、DW、DD、DQ、DT1语句格式[名称]数据定义伪指令初始值[,初始值]…例:.datavalue1BYTE10hva

2、lue2BYTE?list1BYTE10,20,30,40BYTE50,60,70,80list2BYTE32,41h,00100010b,'a'greetingBYTE"Goodafternoon",0dh,0ah,0arrayWORD5DUP(?);5个未初始化的值value3DWORD12345678h78h56h34h0000:0001:0002:12h0003:Intel处理器采用小端顺序:value3+value3+value3+value3+2符号常量不占用任何实际的存储空间。等号 例:COUNT=500ESC_key=27arra

3、ybyteCOUNTDUP(0)movcx,COUNTmoval,ESC_keyEQU如maxintequ0ffh3计算数组和字符串的大小 例:list1BYTE10,20,30,40List1Size=($-list1)myStringBYTE"Thisisalongstring,"BYTE"Containinganynumber"BYTE"ofcharacters",0dh,0ahMyString_len=($-myString)list2WORD1000h,2000h,3000h,4000hList2Size=($-list2)/24微机原

4、理及接口技术第3章Intel处理器指令系统及汇编语言三、数据传送、寻址和算数运算本节要点数据传送指令加法和减法和数据传送相关的操作符和伪指令间接寻址JMP和LOOP指令6立即操作数(immediate)imm:8、16或32位立即数imm8:8位立即数(字节)imm16:16位立即数(字)imm32:32位立即数(双字)寄存器操作数(register)reg:任意的通用寄存器sreg:16位段寄存器CS、DS、SS、ES、FS、GSr8:AH、AL、BH、BL、CH、CL、DH、DLr16:AX、BX、CX、DX、SI、DI、SP、BPr32:E

5、AX、EBX、ECX、EDX、ESI、EDI、ESP、EBP内存操作数(memory)mem:8、16或32位内存操作数(一)数据传送指令1.操作数类型7其它形式r/m8:8位操作数(8位通用寄存器或内存字节)r/m16:16位操作数(16位通用寄存器或内存字)r/m32:32位操作数(32位通用寄存器或内存双字)(一)数据传送指令1.操作数类型8.data…………var1BYTE55hvar2BYTE10hvar3BYTE0aah.codemovax,@datamovds,ax…………moval,[1040h];假设var1位于偏移1040h处

6、…………moval,var1;使用var1的符号名moval,[var1];上一条语句的另一种写法moval,[var1+2];直接偏移操作数…………(一)数据传送指令2.直接内存操作数编译器会自动将名称转换为数字偏移,然后根据该偏移来寻址。9movdestination,source回忆:C++或Java中的赋值语句dest=source;MOV指令需要遵循的规则:两个操作数的尺寸必须一致。两个操作数不能同时为内存操作数。目的操作数不能是CS,EIP和IP。立即数不能直接送至段寄存器。(一)数据传送指令3.MOV指令10MOV指令的具体格式:m

7、ovreg,regmovmem,regmovreg,memmovmem,immmovreg,imm段寄存器仅用于实地址模式下运行的程序。movr/m16,sregmovsreg,r/m16内存之间的移动通过寄存器暂存。(一)数据传送指令3.MOV指令.datavar1WORD?var2WORD?.codemovax,var1movvar2,ax11含义:movewithzero-extend格式:movzxr32,r/m8movzxr32,r/m16movzxr16,r/m8(一)数据传送指令4.整数的零/符号扩展1)MOVZX指令1000110

8、110001101000000000源操作数目的操作数12例:(一)数据传送指令4.整数的零/符号扩展1)MOVZX指令movbx,0A

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

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

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