提取LSB以进行装配程序

时间:2018-01-13 17:54:45

标签: assembly

我正在尝试编写一个程序集乘法程序。但是我在提取乘法器的lsb方面遇到了麻烦,因为我只能为此使用按位NOR,BEQ和ADD指令。我的第一个想法是使用面具,但这个想法失败了。我可能只是错误的面具。有人可以帮助我集思广益吗?

1 个答案:

答案 0 :(得分:2)

lsb = multiplier AND 0xFF

由于您只有NOR,因此您可以从中提取AND功能,例如:

m' = multiplier NOR multiplier   ; m' = not(multiplier)
lsb = m' NOR 0xFFFFFF00          ; I assume 32bit native size, adjust mask by true desired bit size
      ; i.e. the second operand is NOT(0xFF)

(没有验证,所以我很感激确认)

我使用此页面快速检查NOR值表,以确保我的想法不会对我(再次)使用技巧:http://www.randomterrain.com/atari-2600-memories-tutorial-robert-m-06.html#logical_nand_nor_xnor