锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

用右移加法做乘法运算(255*255)

时间:2024-05-24 21:37:08

ORG0000H
JMPA1
ORG002BH A1:MOVR0,#0;数据处理寄存器(乘积高八位)
MOVR1,#255;被乘数(乘积低八位)
MOVR2,#255;乘数
MOV30H,#8;循环次数--8位二进制数相乘8次4位则4次
A2:
C ;清C
MO ,R1;
JNBACC.0,A3;判断被乘数第0位是否为0是则不用相加
MOVA,R0;不为0则相加
ADDA,R2;乘数与处理后数据相加
MOVR0,A;数据存回数据处理寄存器

A3:MOVA,R0;右移一位
R ;相加可能溢出所以用RRC
MOVR0,A; MOVA,R1;
RRCA;将处理后的数移到被乘数
MOVR1,A; DJNZ30H,A2;是否完成
NOP
NOP
NOP
JMP$
;思路
; R0处理数 R1被乘数 被乘数第0位为1相加 相加存到R0
; 00000000 11111111 1 00000000+11111111=11111111
;1 01111111 11111111 1 01111111+11111111=101111110
;2 10111111 01111111 1 10111111+11111111=110111110
;3 11011111 00111111 1 11011111+11111111=111011110
;4 11101111 00011111 1 11101111+11111111=111101110
;5 11110111 00001111 1 11110111+11111111=111110110
;6 11111011 00000111 1 11111011+11111111=111111010
;7 11111101 00000011 1 11111101+11111111=111111100
;8 11111110 00000001
END
-电子元器件采购网(www.ruidan.com)是本土元器件目录分销商,采用“小批量、现货、样品”销售模式,致力于满足客户多型号、高质量、快速交付的采购需求。 自建高效智能仓储,拥有自营库存超过50,000种,提供一站式正品现货采购、个性化解决方案、选型替代等多元化服务。
锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章