8086汇编test指令学习

Test指令将两个操作数进行逻辑与运算,并根据运算结果设置相关的标志位。Test的两个操作数不会被改变。运算结果在设置过相关标记位后会被丢弃。

TEST AX,BX 与 AND AX,BX 命令有相同效果,只是Test指令不改变AX和BX的内容,而AND指令会把结果保存到AX中。

将两个操作数进行按位AND,设结果是TEMP,

SF = 将结果的最高位赋给SF标志位,例如结果最高位是1,SF就是1

看TEMP是不是0

如果TEMP是0,ZF位置1

如果TEMP不是0,ZF位置0

CF位置0

OF位置0

AF位是未定的,

SF位是符号位;

ZF位记录操作的结果是否是0;

PF位是奇偶校验位,如果结果低8位中1的个数是偶数,PF=1;否则PF=0;

emu8086,如下指令看一下情况,

十进制109的十六进制是6D,

二进制是如下,

标志位初始值,

执行完mov之后,

如上执行test之后标志位都不会发生变化;SF也没变,SF是符号位;

如下的数字PF变了;

如下的SF变了;

如果是-109,SF也会变;

有时间继续;

相关推荐
楠木s3 天前
常见汇编代码及其指定
java·汇编·数据库·安全·网络攻击模型·二进制·栈溢出
suyong_yq5 天前
调试Cortex-M85 MCU启动汇编和链接命令文件 - 解题一则
汇编·arm开发·嵌入式系统
染指11109 天前
18.第二阶段x64游戏实战-MFC列表框
汇编·c++·windows·游戏·游戏逆向·x64dbg
RaLi和夕12 天前
单片机学习笔记9.数码管
汇编·笔记·单片机·嵌入式硬件·学习
yu41062112 天前
GCC 内建函数汇编展开详解
汇编
手打猪大屁16 天前
ARM裸机开发——I.MX6U_汇编LED灯驱动
汇编·arm开发
zhmc17 天前
Keil A51汇编伪指令
汇编
攻城狮7号18 天前
【第48节】探究汇编使用特性:从基础到混合编程
汇编·c++·windows
打工人你好23 天前
Visual Studio Code 在.S汇编文件中添加调试断点及功能简介
汇编·ide·vscode
红白小蛋糕24 天前
《操作系统真象还原》第八章(1)——内存管理系统
汇编·笔记·ubuntu