我正在使用Infineon Tricore处理器,我遇到了一种我以前从未见过的寻址模式,然后在一些指令中引用了一个寄存器,我对以下内容感到困惑:
jz16.t d15:2, loc_6749A
现在根据我的理解,该指令检查一位以确定是否采用了分支(来自操作码的.t扩展名)。但是d15:2意味着什么?我只看到用于比特范围,它是否意味着d15的第二位?
重要的是要知道d15包含状态寄存器。
答案 0 :(得分:1)
英飞凌的指令集引用使用语法jz.t d15, n, label
,但正如您猜测的那样,它会检查d15
的第n位(尽管第2位是第3位,而不是第2位)如果该位为零则跳转。
从手册中引用:
如果寄存器D [15]的位n等于零,则将disp4指定的值,零扩展并乘以2添加到PC的内容并跳转到该地址。