QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

全站
10天前
查看: 1865|回复: 3
收起左侧

[讨论结束] 对10求余的51程序

 关闭 [复制链接]
发表于 2008-7-30 14:01:30 | 显示全部楼层 |阅读模式 来自: 中国河北邢台

马上注册,结识高手,享用更多资源,轻松玩转三维网社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
请教各位,我在做一个对10求余的小程序,商和余数在延时2ms后,不断输出至P1再显示到2个数码管上,数码管由P3扫描控制。可我发现当被除数大于99时,就会显示商为8,余数为0,和被除数为80时的结果一模一样,只要被除数在99以下就一切正常。请各位大侠帮忙指教啊,谢谢了! :P - m: h1 a" t  T6 i+ m! L9 ]2 j. _
' F2 a+ s% v5 m$ G/ U7 |
$MOD51
. j0 w" r( d: c+ `$ A# A       ORG  0000H5 `! K8 q. n) ~0 h( y6 Y
MAIN: MOV  A,#64H
: R5 t& x) m/ M: D/ y% |& G; Q       MOV  B,#0AH$ S! x; M: `: c: s1 s
       DIV  AB
3 `0 b8 b. U# o3 a! o, l, Z; p       MOV  DPTR,#TABLE3 t- }8 @4 O: j" K6 \; S- [/ w, i
       MOVC  A,@A+DPTR
% G: b2 C2 M( j8 ^) j% r       MOV  P1,A
  B% l/ c$ z$ ~       MOV  R3,#00H0 ]* ^9 o7 V+ Z; k5 K; n  q
       MOV  P3,R3
, v. a0 `* Z% {1 Q! \ACALL DELAY2 a. Q; {4 O/ ]0 z3 t$ L" L, z; U
       MOV  A,B/ c1 h. H% y) `0 O! R! O3 W
       MOV  DPTR,#TABLE" K- q. I7 J* b. G
       MOVC  A,@A+DPTR7 l4 E( F. L/ t
       MOV  P1,A
4 i0 A+ w9 t" |3 I; d       INC  R31 d0 `$ m6 Z' W; m9 _# f6 x
       MOV  P3,R3
, S* t4 J" s6 P, t$ Y  |ACALL DELAY
. ^7 Q" c% I9 u       AJMP MAIN
; x1 U, [" h; K: {! R6 r, B这是该部分的主要程序了   谢谢了
5 Y/ G3 r9 m) U1 t: ?& l
* X, U& H: b2 n4 m( y" \1 S[ 本帖最后由 word1236 于 2008-7-30 14:02 编辑 ]
发表于 2008-8-1 11:55:25 | 显示全部楼层 来自: 中国河南新乡
我建议你用C来编程,在简单的程序中还体现不出来,程序复杂后就很明显,C要比汇编简单的多。+ B; S* }% U* w' ?: e. J( f  m
等会给你发个C编的你看看试试!
 楼主| 发表于 2008-8-1 12:49:41 | 显示全部楼层 来自: 中国河北邢台
噢 , 我已经明白我的程序执行为什么不能大于100了,也已经改过来了
9 ^4 r$ {* a; N   汇编语言也真的是有相当大的局限性,比如用简单的IF、ELSE就可实现的程序在汇编中有时就很费力了
发表于 2008-8-1 14:10:57 | 显示全部楼层 来自: 中国河南新乡
是呀,在学校里学的东西太基础了。对了,你还是学生吗?建议你在闲暇的时候多看些单片机C语言控制之类的书籍,对编程会有很大用处的!
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Licensed Copyright © 2016-2020 http://www.3dportal.cn/ All Rights Reserved 京 ICP备13008828号

小黑屋|手机版|Archiver|三维网 ( 京ICP备2023026364号-1 )

快速回复 返回顶部 返回列表