找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4750|回复: 6
收起左侧

[求助]

[复制链接]
ID:36997 发表于 2012-5-5 18:07 | 显示全部楼层 |阅读模式

我编了个程序,用伟福编译时总是显示

行:23,错误342:缺“,” <bj.asm>

清帮忙解决,非常感谢

org 0013h
ajmp interrupt
org 0100h
main: setb ea
setb ex1
jnb p0.0,loop1
here: sjmp here
loop1: mov r5,#32h
jnb p0.1,loopz
jb p0.2,here
loopf: mov p2,#0feh                        ;fanzhuan
mov p2,#0f7h
mov p2,#0fbh
mov p2,#0fdh
mov a,r5
mov r4,a
del: mov r7,#14h
del1: mov r6,#0fah
del2: djnz r6,del2
djnz r7,del1
cjne r4,#1ah
jc loopf
djnz r4,del
cjne r5,#1ah
jnc bd
inc r5
jmp loopf
bd: dec r5
jmp loopf
loopz: mov p2,#0feh                  ;zhengzhuan
mov p2,#0fdh
mov p2,#0fbh
mov p2,#0f7h
mov a,r5
mov r4,a
dell: mov r7,#14h
del11: mov r6,#0fah
del22: djnz r6,del22
djnz r7,del11
cjne r4,#1ah                                                 即该行
jc loopz
djnz r4,dell
cjne r5,#1ah
jnc bdd
inc r5
jmp loopz
bdd: dec r5
jmp loopz
loopzad1: cjne r5,#01h             ;zhengjia
jc loopzad
dec r5
loopzad:  mov p2,#0feh
mov p2,#0fdh
mov p2,#0fbh
mov p2,#0f7h
mov a,r5
mov r4,a
delz: mov r7,#14h
delz1: mov r6,#0fah
delz2: djnz r6,delz2
djnz r7,delz1
cjne r4,#1ah
jc loopzad
djnz r4,delz
jmp loopzad
loopzd1: cjne r5,#32h                ;zhengjian
jnc loopzd
inc r5
loopzd:  mov p2,#0feh
mov p2,#0fdh
mov p2,#0fbh
mov p2,#0f7h
mov a,r5
mov r4,a
delzd: mov r7,#14h
delzd1: mov r6,#0fah
delzd2: djnz r6,delzd2
djnz r7,delzd1
cjne r4,#1ah
jc loopzd
djnz r4,delzd
jmp loopzd
loopfad1: cjne r5,#01h               ;fanjia
jc loopfad
dec r5
loopfad: mov p2,#0feh
mov p2,#0f7h
mov p2,#0fbh
mov p2,#0fdh
mov a,r5
mov r4,a
delf: mov r7,#14h
delf1: mov r6,#0fah
delf2: djnz r6,delf2
djnz r7,delf1
cjne r4,#1ah
jc loopfad
djnz r4,delf
jmp loopfad
loopfd1: cjne r5,#32h               ;fanjian
jnc loopfd
inc r5
loopfd:  mov p2,#0feh
mov p2,#0f7h
mov p2,#0fbh
mov p2,#0fdh
mov a,r5
mov r4,a
delfd: mov r7,#14h
delfd1: mov r6,#0fah
delfd2: djnz r6,delfd2
djnz r7,delfd1
cjne r4,#1ah
jc loopfd
djnz r4,delfd
jmp loopfd
loopzz: mov p2,#0feh                           ;zhongduanzheng
mov p2,#0fdh
mov p2,#0fbh
mov p2,#0f7h
mov a,r5
mov r4,a
idelzd: mov r7,#14h
idelzd1: mov r6,#0fah
idelzd2: djnz r6,idelzd2
djnz r7,idelzd1
cjne r4,#1ah
jc loopzz
djnz r4,idelzd
jmp loopzz
loopff: mov p2,#0feh                             ;zhongduanf
mov p2,#0f7h
mov p2,#0fbh
mov p2,#0fdh
mov a,r5
mov r4,a
idelfd: mov r7,#14h
idelfd1: mov r6,#0fah
idelfd2: djnz r6,idelfd2
djnz r7,idelfd1
cjne r4,#1ah
jc loopff
djnz r4,idelfd
jmp loopff
org 0300h
interrupt: jnb p0.0,l1
 ljmp main
 l1: jnb p0.1,l1z
 jnb p0.2,l1f
 l1z: jnb p0.3,l1za
 jnb p0.4,l1zd
 ljmp loopzz
 l1za: ljmp loopzad1
 l1zd: ljmp loozd1
 l1f: jnb p0.3,l1fa
 jnb p0.4l1fd
 ljmp loopff
 l1fa: ljmp loopfad1
 l1fd: ljmp loopfd1

回复

使用道具 举报

ID:27916 发表于 2012-5-5 20:05 | 显示全部楼层

语法错啦,

后面缺少了一个标号

回复

使用道具 举报

ID:36505 发表于 2012-5-7 16:46 | 显示全部楼层
好难的汇编啊
回复

使用道具 举报

ID:7485 发表于 2012-5-8 19:14 | 显示全部楼层

cjne指令后面需要3个参数,两个是相比较的数据,第3个是跳转的地址(或标号)。

这个指令的意思是:如果前面两个参数值不等则跳转到第3个参数指定的地方。如果前面两个参数值相等,则顺序执行不跳转。

 

你少了第3个参数。当然报错了。

 

学这东西,没有捷径。还是扎扎实实的从头开始。弄懂每一个指令的意义和用法,往后才能比较顺利。

 

想在10天半个月内学会单片机,那都是忽悠人的,别信那,都是“鬼吹灯”。

[此贴子已经被作者于2012-5-8 19:17:52编辑过]
回复

使用道具 举报

ID:36997 发表于 2012-6-14 14:44 | 显示全部楼层

谢谢

虽然晚了点···

呵呵·····

刚学,很多东西总是忘记

 

回复

使用道具 举报

ID:36997 发表于 2012-6-14 14:45 | 显示全部楼层

呵呵·······

谢谢

回复

使用道具 举报

ID:36997 发表于 2012-6-14 14:46 | 显示全部楼层

对此论坛还不熟悉······

用的也不是很频繁···

但我还是感觉这个论坛很好

 

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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