大神,求解,单片机汇编,在线等,挺急的
在MCS-51的KeyCode(RAM30H单元)存放着用户按键代码,代码值00H~04H,其中00H表示没有用户按键,01H~04H代表用户按下了加、减、乘、除四个键,...
在MCS-51 的KeyCode (RAM 30H单元)存放着用户按键代码,代码值00H~04H,其中00H表示没有用户按键,01H~04H代表用户按下了加、减、乘、除四个键,根据用户按键计算:
R6 op R7=R3R4 (OP代表加、减、乘、除运算,R3R4保存运算结果 )试编写程序实现上述功能。
KeyCode EQU 30H ;EQU定义符号伪指令
Org 0000h ; Org汇编起始伪指令,规定了下面代码存放在rom中的起始地址
Ljmp Start ; 长跳转到主程序开始
Org 0100h; Org汇编起始伪指令,规定了下面代码存放在rom中的起始地址
Start:
nop ;在此处开始写你的程序
Sjmp $ ;程序执行到此处停止
End 展开
在MCS-51 的KeyCode (RAM 30H单元)存放着用户按键代码,代码值00H~04H,其中00H表示没有用户按键,01H~04H代表用户按下了加、减、乘、除四个键,根据用户按键计算:
R6 op R7=R3R4 (OP代表加、减、乘、除运算,R3R4保存运算结果 )试编写程序实现上述功能。
KeyCode EQU 30H ;EQU定义符号伪指令
Org 0000h ; Org汇编起始伪指令,规定了下面代码存放在rom中的起始地址
Ljmp Start ; 长跳转到主程序开始
Org 0100h; Org汇编起始伪指令,规定了下面代码存放在rom中的起始地址
Start:
nop ;在此处开始写你的程序
Sjmp $ ;程序执行到此处停止
End 展开
1个回答
展开全部
KeyCode EQU 30H ;EQU定义符号伪指令
Org 0000h ;
Ljmp Start ; 长跳转到主程序开始
Org 0100h; Org汇编起始伪指令,规定了下面代码存放在rom中的起始地址
Start:
MOV A,30H
JZ Start
DEC A
JNZ S01
MOV A,R6
ADD A,R7
MOV R4,A
CLR A
ADDC A,#0
MOV R3,A
SJMP Start
S01:
DEC A
JNZ S02
MOV A,R6
CLR C
SUBB A,R7
MOV R4,A
JC S011
MOV R3,#00H
SJMP Start
S011:
MOV R3,#0FFH
SJMP Start
S02:
DEC A
JNZ S03
MOV A,R6
XCH A,B
MOV A,R7
MUL AB
MOV R4,A
XCH A,B
MOV R3,A
SJMP Start
S03:
MOV A,R7
XCH A,B
MOV A,R6
DIV AB
MOV R4,A
CLR A
MOV R3,#0
SJMP Start
Sjmp $ ;程序执行到此处停止
End
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询