恭喜,你发布的帖子
发布于 2023-03-29 08:01:15
7楼
你可能觉得有一个隐含的工作寄存器,其实没有。
VB500指令执行前后不产生变化,VB500不能作工作寄存器。
输出寄存器就成为必然的工作寄存器。
STL表示的过程,正好说明这一点。
没错,指令的本意确实是希望不破坏源数据的值,所以直接把源先赋值给目的,然后再移动目的数据的相应位来达到要求。只是这样也确实会造成误会。
芳工说的对,如果不是使用累加器,比如使用V区作为N和Out又是同一个地址,那么编译器会给出出错诊断信息,编译通不过。但如果是累加器就不会给出编译出错信息,这是因为AC可以被作为不同粒度数据造成的,编译器在这里不够好。
也许需要修改手册给出实际工作原理的信息来提示用户注意。
请填写推广理由:
分享
只看
楼主