维库电子市场网
登录 免费注册 首页 | 行业黑名单 | 委托交易 | 帮助 | English
 
IC供应
IC求购
非IC供应
非IC求购
电子资讯
技术资料
商人论坛
 
技术文章 PDF资料 IC价格 引脚说明 电路图 IC替换 IC厂商 电子辞典
作者 主题 内容
采购元器件好去处--维库电子市场网推荐
技术交流 | 电路欣赏 | 工控天地 | 数字广电 | 通信技术 | 电源技术 | 测控之家 | EMC技术 | ARM技术 | EDA技术 | PCB技术 | 嵌入式系统
驱动编程 | 集成电路 | 器件替换 | 模拟技术 | 新手园地 | 单 片 机 | DSP技术 | MCU技术 | IC 设计 | IC 产业 | CAN-bus/DeviceNe

8051汇编一个乘法(不用MUL指令),请帮忙看看有没问题

来源:21ic 作者:ttneil 栏目:新手园地
8051汇编一个乘法(不用MUL指令),请帮忙看看有没问题
题目:
8051汇编写两个16bit unsinged乘法(不能用MUL指令),原数据摆在40h~43h(low high), 结果摆在IDATA80h~81h(low high)。

我的解答:
    ORG 0000H
    AJMP Main
    ORG 0040H
Main:   MOV 80H,#00H
    MOV 81H,#00H
    MOV R0,#00H
    MOV A,40H
    RRC A
    JNC No;第一位不是1,不操作
    MOV 80H,42H
    MOV 81H,43H
    JMP No
Loop:   CJNE R0,#7,Next
    MOV A,41H;查完乘法低字节后查乘法高字节
Next:    CLR C
    RRC A
    JNC No
    MOV R2,A;保存A
    MOV A,R0
    MOV R1,A
Mul2:   CLR C
    MOV A,42H
    RLC A
    MOV 82H,A
    MOV A,43H
    RLC A
    MOV 83H,A
    DJNZ R1,Mul2;16位数左移R0次存放在82H~83H(Low High)
ADD16:  CLR C
    MOV A,80H
    ADD A,82H
    MOV 80H,A
    MOV A,81H
    ADDC A,83H
    MOV 81H,A;16位加法
    MOV A,R2;还原A
No:     INC R0
    CJNE R0,#16,Loop
    END

好像得不到理想结果,不知道错哪里?


1楼: >>参与讨论
maychang
这样的例程
应该用软仿真检查。


2楼: >>参与讨论
ttneil
仿真过还不行
我仿真过了,但是比较复杂。找不到原因

3楼: >>参与讨论
maychang
不许用MUL指令
这个限制条件很不讲道理。



参与讨论
昵称:
讨论内容:
 
 
相关帖子
ptotel中的数码管封装是什莫?
LM2576的典型应用中,电感除了电感量的要求外,还有什么要求
7805输出端接电容大小问题
请问:普通的玩具电机驱动电流多大
画Protel图


Copyright © 1998-2006 www.dzsc.com 浙ICP证030469号