单片机编程问题,急我想问我的这个程序错在哪里了,一直只在loop1那里循环建立某课程若干人成绩表,分别统计优秀,良好,中
来源:学生作业帮 编辑:大师作文网作业帮 分类:综合作业 时间:2024/11/11 16:21:38
单片机编程问题,急
我想问我的这个程序错在哪里了,一直只在loop1那里循环
建立某课程若干人成绩表,分别统计优秀,良好,中等,及格,不及格人数
ORG 0000H
AJMP MAIN
ORG 0040H
MAIN:
MOV R0,#30H 成绩,从30H单元开始放
MOV R2,#0 优秀
MOV R3,#0 良好
MOV R4,#0 中等
MOV R5,#0 及格
MOV R6,#0 不及格
LOOP:MOV A,@R0
CJNE A,#90,COMP1 比较分数,不等于90,跳转到comp1
SJMP LOOP1 等于90跳转到loop1
COMP1:JNC LOOP1 cy=0,说明分数大于90跳转到loop1
JC NEXT1 cy=1,说明分数小于90跳转到next1
LOOP1:INC R2
INC R0
NEXT1:CJNE A,#80,COMP2
SJMP LOOP2
COMP2:
JNC LOOP2
JC NEXT2
LOOP2:INC R3
INC R0
NEXT2:CJNE A,#70,COMP3
SJMP LOOP3
COMP3:
JNC LOOP3
JC NEXT3
LOOP3:INC R4
INC R0
NEXT3:CJNE A,#60,COMP4
SJMP LOOP4
COMP4:
JNC LOOP4
JC LOOP5
LOOP4:INC R5
INC R0
LOOP5:INC R6
INC R0
我想问我的这个程序错在哪里了,一直只在loop1那里循环
建立某课程若干人成绩表,分别统计优秀,良好,中等,及格,不及格人数
ORG 0000H
AJMP MAIN
ORG 0040H
MAIN:
MOV R0,#30H 成绩,从30H单元开始放
MOV R2,#0 优秀
MOV R3,#0 良好
MOV R4,#0 中等
MOV R5,#0 及格
MOV R6,#0 不及格
LOOP:MOV A,@R0
CJNE A,#90,COMP1 比较分数,不等于90,跳转到comp1
SJMP LOOP1 等于90跳转到loop1
COMP1:JNC LOOP1 cy=0,说明分数大于90跳转到loop1
JC NEXT1 cy=1,说明分数小于90跳转到next1
LOOP1:INC R2
INC R0
NEXT1:CJNE A,#80,COMP2
SJMP LOOP2
COMP2:
JNC LOOP2
JC NEXT2
LOOP2:INC R3
INC R0
NEXT2:CJNE A,#70,COMP3
SJMP LOOP3
COMP3:
JNC LOOP3
JC NEXT3
LOOP3:INC R4
INC R0
NEXT3:CJNE A,#60,COMP4
SJMP LOOP4
COMP4:
JNC LOOP4
JC LOOP5
LOOP4:INC R5
INC R0
LOOP5:INC R6
INC R0
每个Loop最后加上 SJMP LOOP
再问: 加了后也不对,我在30H中输入88H,不跳转到next1,不管怎么,都是一直在loop1处循环,不跳转到其他地方
再答: cjne 改成大于等于那条指令试一下具体忘了
再问: 加了后也不对,我在30H中输入88H,不跳转到next1,不管怎么,都是一直在loop1处循环,不跳转到其他地方
再答: cjne 改成大于等于那条指令试一下具体忘了
例如我创建了成绩表(学号,总分,课程名1,课程名2,课程名3)但是课程要在程序运行后才晓得具体的名称,因外表是在输入了课
51单片机少写了一个循环语句,为什么还能执行循环,错在哪里呢?程序如下:
excel中,在成绩表里面,成绩优秀的在总分后面一列写上“优秀”,最后我要求出优秀率,该怎么样用函数?
关于matlab的编程问题,我写了程序,但是运行一直有问题,
我在百度(问作业)的那里问的问题在哪里看?在(我的提问)里没有啊,刷新了
我这个matlab程序错在哪里?
这个简单的matlab程序错在哪里了?
在Excel成绩表中的数据进行分类汇总,按性别分别求出男生女生每门课程的最高分.后面
请问用在51单片机上的程序直接编程到AVR的单片机里可以吗?
matlab编写问题我想同时在程序中进行函数求导,并且循环计算,并把数据打出.自己设计的程序如下:clear;syms
急:SAS程序问题我的程序中有这样一段错误提示,请问有谁知道是程序哪里出了问题啊?ERROR:Read Access V
我想在matlab中实现这个循环,