社区
单片机/工控
帖子详情
求三字节的十六进制除以一字节的十六进制数的商和余数
lbkbox
2006-12-25 03:20:20
求三字节的十六进制除以一字节的十六进制数的商和余数
要求是汇编的,答对才,立即给分!!!谢谢
...全文
347
14
打赏
收藏
求三字节的十六进制除以一字节的十六进制数的商和余数
求三字节的十六进制除以一字节的十六进制数的商和余数 要求是汇编的,答对才,立即给分!!!谢谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
MBWQ
2007-03-06
打赏
举报
回复
给一个双字节的和单字节的
;void _DIV2()
;调移位除法子程序
;入口:被除数:reg2 reg0 除数:A
;出口:商:reg2 reg0 余数:reg1
_DIV2:
BANK 2
MOV R_ACC5,A ;R_ACC5=A
CLR R_ACC ;R_ACC=0
CLR R_ACC1
CLR reg1 ;reg1=0
MOV A,@16 ;R_ACC4=8
MOV R_ACC4,A ;
_D2001: ;DO
bc status,c
RLC reg0 ;reg0<<=1+C
RLC reg2
RLC reg1 ;reg1<<=1+C
JBC status,c
JMP _I2001
MOV A,R_ACC5 ;IF reg1>=R_ACC5
SUB A,reg1 ;
JBS STATUS,C ;
JMP _I2000 ;
MOV A,R_ACC5 ;reg1-=R_ACC5
SUB reg1,A ;
_I2000: ;ENDIF
RLC R_ACC ;R_ACC<<=1+C
RLC R_ACC1
DJZ R_ACC4 ;WHILE --R_ACC4!=0
JMP _D2001 ;
MOV A,R_ACC1
MOV reg2,A
MOV A,R_ACC ;A=R_ACC
MOV reg0,A
RET ;RETURN
_I2001:
MOV A,R_ACC5 ;reg1-=R_ACC5
SUB reg1,A
bs status,c
JMP _I2000
;void _DIV()
;入口:被除数:reg0 除数:A
;出口:商:A 余数:reg1
_DIV:
BANK 2
MOV R_ACC5,A ;R_ACC5=A
CLR R_ACC ;R_ACC=0
CLR reg1 ;reg1=0
MOV A,@8 ;R_ACC4=8
MOV R_ACC4,A ;
_D001: ; DO
RLC reg0 ;reg0<<=1+C
RLC reg1 ;reg1<<=1+C
MOV A,R_ACC5 ;IF reg1>=R_ACC5
SUB A,reg1 ;
JBS STATUS,C ;
JMP _I000 ;
MOV A,R_ACC5 ;reg1-=R_ACC5
SUB reg1,A ;
_I000: ;ENDIF
RLC R_ACC ;R_ACC<<=1+C
DJZ R_ACC4 ;WHILE --R_ACC4!=0
JMP _D001 ;
MOV A,R_ACC ;A=R_ACC
RET ;RETURN
sanman888
2007-03-03
打赏
举报
回复
看来还是有好人啊,还是有人愿意帮助人提高啊
flowercity
2007-03-03
打赏
举报
回复
呵呵
Etual
2007-03-03
打赏
举报
回复
既然有了双字节除法的程序,就可以自己去改写4字节程序了
如果改写不出来,证明没有对除法原理理解好......
lbkbox
2007-03-02
打赏
举报
回复
谢谢楼上的, 双字节除单字节的我也有,因为工作的需要,51汇编我刚学,所以不太会变通。
xinxizheng
2007-01-07
打赏
举报
回复
呵呵,我给你个双字节除单字节的,不要吵了。但是要好好学习啊,除法就是很麻烦,这也是汇编难用的地方,什么都要自己编
;入口条件:被除数在R4、R5中,除数在R7中。
;出口信息:OV=0 时,单字节商在R3中,OV=1 时溢出。
;影响资源:PSW、A、R3~R7 堆栈需求: 2字节
D457: CLR C
MOV A,R4
SUBB A,R7
JC DV50
SETB OV ;商溢出
RET
DV50: MOV R6,#8 ;求平均值(R4R5/R7-→R3)
DV51: MOV A,R5
RLC A
MOV R5,A
MOV A,R4
RLC A
MOV R4,A
MOV F0,C
CLR C
SUBB A,R7
ANL C,/F0
JC DV52
MOV R4,A
DV52: CPL C
MOV A,R3
RLC A
MOV R3,A
DJNZ R6,DV51
MOV A,R4 ;四舍五入
ADD A,R4
JC DV53
SUBB A,R7
JC DV54
DV53: INC R3
DV54: CLR OV
RET
lbkbox
2006-12-31
打赏
举报
回复
你好象把自装扮成什么圣人似的,你少在我的贴子里说话了。
lbing7
2006-12-28
打赏
举报
回复
答问题是应该的,但是我不能害人!!
如果我什么都帮他做完了,之后他工作上或学习上
可能就出问题,那样不是帮它,而是害他
我相信用进废退学说的...
lbing7
2006-12-28
打赏
举报
回复
我宁愿不要你的分!
江南一书生
2006-12-28
打赏
举报
回复
要求是用哪种CPU的汇编指令集?Intel X86? 8051? ARM? MIPS? 其他?
shen_guang_wu
2006-12-28
打赏
举报
回复
好打击人哦,觉得我们在这里回答问题就是为了挣分数?
到现在为止我都不晓得分数有啥子用呢?
我个人认为这里是一个很好的技术交流平台,有时间同时我也知道一些的问题就回一下,呵呵
lbkbox
2006-12-27
打赏
举报
回复
谁给我源程序,我给分
lbing7
2006-12-25
打赏
举报
回复
用减法模拟除法...
lbing7
2006-12-25
打赏
举报
回复
我们没有义务给你源码!
你没给我钱!
给你全思路吧....
编码的奥秘:
字节
与
十六进制
转自:《编码的奥秘》 第十五章 上一章中的两个改进的加法机清晰地解释了
数
据路径的概念。在整个电路中, 8位值从一个部件传到另一个部件。它们是加法器、锁存器、选择器的输入,经过运算或操作又从这些部件输出。这些
数
由开关定义,最后由灯泡来表示结果。可以认为电路中的
数
据路径的宽度是8位。可是,为什么一定是 8位,而不是 6位、 7位、 9位或1 0位呢? ...
十、二、八、
十六进制
间转换(包含负
数
间进制转换)原码、补码、反码定义
十、二、八、
十六进制
间转换(包含负
数
间进制转换) 0.0、有符号的 1
字节
表示范围。 我们知道 1
字节
(byte) = 8 位(bit)(即8位二进制,如:11111111)、1024个
字节
= 1 K 、1024 K = 1M 所以,一
字节
可以表示的范围就有 0 ~ 256 (无符号
数
),而有符号
数
表示的范围则是: -128 ~ 127 有符号
数
的表示范围应该是无异议的,但是无符号
数
的表示范围就有门道了,为什么负
数
会多表示一位呢? 正常来讲,1
字节
有八位,其中最左位表示正负(
asic码转16进制c语言,
十六进制
数
转换成ascii码
本文收集整理关于
十六进制
数
转换成ascii码的相关议题,使用内容导航快速到达。内容导航:Q1:一个
十六进制
数
转换成ASCII码的单片机程序HASC:MOVA,R0;从R0中取一个16进制(二进制)
数
(0-F)ANLA,#0FH;屏蔽掉高4位PUSHACC;4位二进制
数
入栈CLRC;清进(借)位位SUBBA,#0AHPOPACCJCLOOPADDA,#07HLOOP:ADDA,#30HMOVR2,A...
1.
数
据类型
一、整
数
类型 1、整
数
类型常量 进制转换 (1)进制表示 *二进制:O* *八进制:B* *十进制:D* *
十六进制
:H* (2)进制转换 【1】二进制转十进制 例:二进制:1101 方法:从右至左 依次乘以20、21、22、23然后相加 十进制:13 【2】十进制转八进制 例:十进制:22 方法:22
除以
8,所得
余
数
依次从上到下排列,最后从下向上写 八进制:26 【3】
十六进制
转八进制 先将
十六进制
转为十进制再将七转为八进制 2、整
数
类型变量 (1)定义整
数
类型变量 int num1 =
Java中整
数
表现形式及进制转换
十进制:0-9,满10进1八进制:0-7,满8进1,用0开头表示
十六进制
:0-9,A-F,满16进1,用0x开头表示二进制:8个二进制
数
字组成一个单元——
字节
,即一
字节
由8比特组成。十进制和二进制的转换:对十进制
数
进行多次
除以
二运算直到除尽,从右往左,无
余
数
则为0,有
余
数
则为1。二进制和十进制的转换:对二进制
数
进行乘以二运算。八进制:由二进制三位组成一位而来。
十六进制
:又二进制四位组成一位而来。其...
单片机/工控
27,375
社区成员
28,769
社区内容
发帖
与我相关
我的任务
单片机/工控
硬件/嵌入开发 单片机/工控
复制链接
扫一扫
分享
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章