📄 4215.asm
字号:
mpy32u: ;32位*32位无符号乘法
ldi r28,32 ;初始化循环计数器
clr r27 ;清结果高字节
clr r26
clr r25
clr r24
lsr r23 ;右移乘数
ror r22
ror r21
ror r20
m32u1:
brcc m32u2 ;进位位为 0 ,跳至m32u2
add r24,r16 ;进位位为 1
adc r25,r17 ;结果高字节 + 被乘数
adc r26,r18
adc r27,r19
m32u2:
ror r27 ;右移结果
ror r26
ror r25
ror r24
ror r23
ror r22
ror r21
ror r20
dec r28 ;计数器减 1
brne m32u1 ;不为 0,再循环
ret ;为 0 ,返回
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -