东北大学自动化复习课件第3章 16位和32位微处理器的指令系统.ppt
文本预览下载声明
86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 系统设置和测试指令 CLTS 功能: 清除机器状态字中的任务切换标志TS。 SGDT/SLDT/SIDT 分别将: 全局描述符表寄存器 局部描述符表寄存器 中断描述符表寄存器 的内容送到存储器中。 LTR STR LAR LSL LGDT/LLDT/LIDT VERR/VERW检测段类型指令 VERR检测一个选择子所对应的段是否可读 VERW则检测一个选择子所对应的段是否可写。 LMSW装入机器状态字指令 将存储器中2字节送到机器状态字MSW。 SMSW存储机器状态字指令 将机器状态字MSW存入内存2字节中。 ARPL调整请求特权级指令 这条指令调整选择子的RPL字段。 80486新增加的指令 (1) BSWAP r双字交换指令 将指定的32位寄存器中双字第31~24位与第7~0位交换,第23~16位与第15~8位交换。 (2) CMPXCHG r/m, r 32位比较指令 将目的寄存器或存储器中数和累加器中数比较,如等则ZF为1,并将源操作数送目的操作数;否则ZF为0,并将目的操作数送累加器。 (3) XADD r/m, r 字交换加法指令 将源操作数和目的操作数相加,结果送目的操作数处,而目的操作数送源操作数处。 (4) INVD Cache清除指令 将片内Cache中的内容清除,并,使外部电路清除外部Cache中的内容。 (5) WBINVD Cache清除和回写指令 将片内Cache中的内容清除,并外部电路将外部Cache中的数据回写到主存,再清除外部Cache中的内容。 (6) INVLPG m TLB项清除指令 使转换检测缓冲器TLB的32个表项中用m指出的当前项清除。 Pentium新增加的指令 (1) CMPXCHG8B m 8字节即64位比较指令 将EDX∶EAX中的8个字节与m所指的存储器中的8个字节比较。 (2) RDTSC读时钟周期数指令 读取记录时钟周期数的64位计数器的值送EDX:EAX。 (3) CPUID读取CPU的标识等有关信息 获得Pentium处理器的类型等有关信息。 (4) RDMSR读取模式专用寄存器的指令 Pentium模式专用寄存器中的值。 (5) WRMSR 写入模式专用寄存器的指令 将EDX∶EAX中64位数写入模式专用寄存器。 (6) RSM 复位到系统管理模式 (7) MOV CR4,R32 (8) MOV R32,CR4 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 运算符 (1)算术运算符 加(+)、减(-)、乘(*)、除(/)、取模运算符MOD 。 (2) 逻辑运算符 与(AND)、或(OR)、非(NOT)和异或(XOR)运算。 (3) 关系运算符 相等EQ、不等NE、小于LT、大于GT、小于或等于LE、大于或等于GE。 (4) 分析运算符和综合运算符 分析运算符: OFFSET SEG TYPE SIZE LENGTH 综合运算符: PTR THIS 语句 宏汇编语言中的两种语句: 指令性语句, 如: ADD AL,BL MOV AX,1000 指示性语句。 指示性语句即伪指令 如: DB SEG 伪指令 最常用的伪指令有: · EQU; · DB、DW和DD; · BYTE、WORD、DWORD; · SEGMENT、ENDS、ASSUME和ORG; · PROC、ENDP、NEAR、FAR; · END。 80386的寻址方式和指令系统 80386的寻址方式 80386的指令系统 80386的寻址方式 包括: 立即数寻址 寄存器寻址 直接寻址 寄存器间接寻址 (1) 直接寻址方式 如: INC WORD PTR[500] ;字的有效地址为500 (2) 寄存器间接寻址方式 如: MOV[ECX],EDX ;ECX指出有效地址 (3) 基址寻址方式 如: MOV ECX,[E
显示全部