Dar*_*uso 4 assembly 68000 modulo
我想知道是否有一个命令/方法在Motorola 68000程序集中执行模数?
我想执行d4 mod 1000和d3 mod 100.
目前我正在使用以下公式,但这需要几行,
如果一个mod n则a - (n*int(a/n))
我已经看到了d0 mod d1的这个公式
CLR.L D2 MOVE.W D0,D2 DIVU D1,D2 SWAP D2
谢谢你的回答.
Dav*_*zer 7
该DIVU指令正是您正在寻找的.执行时DIVU,目标的长字除以源的字.在你的情况下,你写道:
DIVU
DIVU D1, D2
所以,D2被D1除.在商中,有两个部分返回.D2的高位字将包含余数(模数),而低位字包含商.这就是你通常看到的原因SWAP d2.这会将余数移到低位字.
SWAP d2
归档时间:
8 年,4 月 前
查看次数:
1092 次
最近记录:
7 年,5 月 前