Assembly tst.b或tst.w指令到底做什么?

Assembly tst.b或tst.w指令到底做什么?,assembly,embedded,msp430,Assembly,Embedded,Msp430,我理解它应该是“测试目的地”,但这到底意味着什么? .w和.b的操作如下: dst+0FFFFh+1
dst+0FFh+1
 通常test意味着:使用按位AND组合两个值,然后根据结果设置状态寄存器,但不存储结果本身 在MSP430上,TST指令只有一个参数;在本例中,“测试值”似乎与“将值与0进行比较”相同 事实上,MSP430的一些未知编译器说: TST(.B)xxx是CMP(.B)#0,xxx的缩写 这个指令如何影响状态寄存器?他说,根据结果设置状态寄存器。我在问状态寄存器的哪一部分被设置

我理解它应该是“测试目的地”,但这到底意味着什么? .w和.b的操作如下:
dst+0FFFFh+1
dst+0FFh+1


通常
test
意味着:使用按位AND组合两个值,然后根据结果设置状态寄存器,但不存储结果本身

在MSP430上,
TST
指令只有一个参数;在本例中,“测试值”似乎与“将值与0进行比较”相同

事实上,MSP430的一些未知编译器说:

TST(.B)xxx
CMP(.B)#0,xxx的缩写


这个指令如何影响状态寄存器?他说,根据结果设置状态寄存器。我在问状态寄存器的哪一部分被设置。因为他说通常是根据结果设置状态寄存器。我在问状态寄存器的哪一部分设置为“正常”。由于这种情况不正常,它是否仍然影响状态寄存器?如果是,如何影响--没必要是个混蛋@fuz@DestreationMartin Rosenau准确地解释了MSP430上的
TST
的含义:它是
CMP
的缩写,其中一个操作数是
#0
。马丁甚至为你链接了那本手册。在这里,您肯定可以找到
CMP
设置了哪些标志,从中您可以简单地总结出
TST
设置了哪些标志,因为
TST
只是
CMP
@Destreation的简写,具体解释了MSP430具有哪些标志以及指令如何影响它们。