Sal*_*ara 4 algorithm assembly rotation
我试图破解一些涉及8位二进制数上多次左旋转的汇编代码.
供参考,代码是:
lab: rol dl,1
rol dl,1
dec ecx
jnz lab
Run Code Online (Sandbox Code Playgroud)
该dec和jnz是不是一个问题,而是有没有表明,2个rols的多次执行.
我想要做的是找出这个代码的数学等价物,例如公式.我当然不是在寻找一个完整的公式来告诉我整个代码,但我想知道是否有一个公式给出了单个左旋转的等价(以denary为单位).
我试过用几个不同的数字来解决这个问题,但是看不到两个结果之间的联系.例如:如果起始编号为115,则表示为220,但如果起始编号为99,则表示为216.
鉴于您的样本结果,我假设我们将8位数量视为无符号.
7个低位向左移位,将该部分乘以2; 并且高位被交换到开头.
因此,(x % 128) * 2 + (x / 128)使用通常的整数div/mod运算符.
| 归档时间: |
|
| 查看次数: |
310 次 |
| 最近记录: |