?? 4214.asm
字號(hào):
mpy16s: ;16位*16位帶符號(hào)乘法
clr r21 ;清結(jié)果和進(jìn)位位
sub r20,r20
ldi r22,16 ;初始化循環(huán)計(jì)數(shù)器
m16s_1:
brcc m16s_2 ;進(jìn)位位為 0 ,跳至m16s-2
add r20,r16 ;進(jìn)位位為 1
adc r21,r17 ;結(jié)果3字節(jié)2字節(jié)加被乘數(shù)
m16s_2:
sbrc r18,0 ;如果當(dāng)前位置位
sub r20,r16 ;從結(jié)果字節(jié)2中減被乘數(shù)低字節(jié)
sbrc r18,0 ;如果當(dāng)前位置位
sbc r21,r17 ;從結(jié)果字節(jié)2中減被乘數(shù)低字節(jié)
asr r21 ;算術(shù)右移結(jié)果和乘數(shù)
ror r20
ror r19
ror r18
dec r22 ;循環(huán)計(jì)數(shù)器減 1
brne m16s_1 ;如沒(méi)完成,再循環(huán)
ret
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -