Ⅰ 汇编语言中ORL如何用,什么叫做置位
汇编语言中,ORL是“按位或”操作指令,常用来测试两个操作数是否同时为0,或者用来置位某些位,置位就是将一个位数据设置为1。
例如:
ORL A,R1;对A和R1进行或操作
JZ MAX;如果结果为0则跳转到XAX继续执行程序
ORL B,#0FH;将B寄存器的第4位置位
KEY4EQU30H
KEY2EQU31H
ORG0000H
LJMPMAIN
ORG0030H
MAIN:
CLREA
MOVSP,#5FH
MOVKEY2,#0
MOVKEY4,#0
LOOP:
JBP1.0,LOOP
MOVR7,#10
LCALLDELAY
JBP1.0,LOOP
JNBP1.0,$
MOVP3,#0C0H
LOOP0:
LCALLKEYDEAL
MOVA,KEY4
JNZLOOP41
MOVA,P3
ANLA,#0F0H
ORLA,#0EH
MOVP3,A
SJMPLOOP21
LOOP41:
DECA
JNZLOOP42
MOVA,P3
ANLA,#0F0H
ORLA,#0DH
MOVP3,A
SJMPLOOP21
LOOP42:
DECA
JNZLOOP43
MOVA,P3
ANLA,#0F0H
ORLA,#0BH
MOVP3,A
SJMPLOOP21
LOOP43:
DECA
JNZLOOP21
MOVA,P3
ANLA,#0F0H
ORLA,#07H
MOVP3,A
LOOP21:
MOVA,KEY2
JNZLOOP22
MOVA,P3
ANLA,#0FH
ORLA,#20H
MOVP3,A
SJMPLOOP3
LOOP22:
DECA
JNZLOOP3
MOVA,P3
ANLA,#0FH
ORLA,#10H
MOVP3,A
LOOP3:
LJMPLOOP0
;----------------------------
DELAY:
MOVR2,#2
DLY1:
MOVR3,#250
DJNZR3,$
DJNZR2,DLY1
DJNZR7,DELAY
RET
;-----------------------------
KEYDEAL:
JBP1.1,KEYEN1
MOVR7,#10
LCALLDELAY
JBP1.1,KEYEN1
JNBP1.1,$
INCKEY4
MOVA,KEY4
ANLA,#03H
MOVKEY4,A
KEYEN1:
JBP1.2,KEYEN2
MOVR7,#10
LCALLDELAY
JBP1.2,KEYEN2
JNBP1.2,$
INCKEY2
MOVA,KEY2
ANLA,#01H
MOVKEY2,A
KEYEN2:
RET
;-----------------------------
Ⅲ 编程实现下列逻辑功能
这个逻辑表达式,可以化简,就是:Q = XYZ + XYF + XZF
假设,各个变量对应的引脚如下:
X:P1.0
Y:P1.1
Z:P1.2
F:P1.3
Q:P1.7
程序如下:
MOV C,P1.0
ANL C,P1.1
ANL C,P1.2
MOV F0,C
MOV C,P1.0
ANL C,P1.1
ANL C,P1.3
ORL C,F0
MOV F0,C
MOV C,P1.0
ANL C,P1.2
ANL C,P1.3
ORL C,F0
MOV P1.7,C
END
Ⅳ 单片机 编程
1\
mov c,p2.0
orl c,b.0
anl c,acc.0
orl c,p3.0
mov p1.7,c
如果B.0和P2.0都是1时两者之和是1
Ⅳ 两道单片机编程题目,用汇编语言
第一题:
ASC:
PUSH ACC
ANL A,#0FH
ADD A,#30H
MOV R2,A
POP ACC
ANL A,#0F0H
SWAP A
ADD A,#30H
MOV R3,A
RET
第二题:
BCDZH:
MOV R0,#20H
MOV R1,#30H
MOV R2,#16
LOOP:
MOV A,@R0
MOV B,A
INC R0
MOV A,@R0
SWAP A
ORL A,B
MOV @R1,A
INC R0
INC R1
DJNZ R2,LOOP
RET
Ⅵ 单片机编程题 急!!!高手进,小弟送分!!!
1。编程将外部数据存储器2100H单元中的高4位置“1”,其余位清“0”
MOV DPTR, #2100H ;设定地址
MOV A, #11110000B ;准备数字
MOVX @DPTR, A ;送到外部数据存储器2100H单元中
2。编程将内部数据存储器40H单元的第0位和第7位置“1”,其余位取反。
MOV A, 40H
ORL A, #10000001B ;或,即是按照“位”相加
XRL A, #01111110B ;用1异或,相当与取反
MOV 40H, A
完
Ⅶ 汇编语言的编程方法
题目:a=1+2
mov a,#01h
add a,#02h
hehe!
能看懂吗?
Ⅷ 用ANL和ORL指令编程将P1口的P1.0置低,P1.1置高,其余位不变。(使用汇编语言)
MOV A,P1
ANL A,#0FCH
ORL A,#02H
MOV P1,A
Ⅸ 急求!!!哪位朋友指点下单片机程序题。。
ANL A, #17H; (A)=多少A是怎么算出来的求解
Ⅹ 单片机汇编语言编程。在线等!!!!求大哥们帮下忙
;采纳答案是错误的。
;按照他的程序,30H 单元并没有任何变化。
;另外,他的程序,还用了许多非法指令。
;正确程序如下:
ANL 30H, #11111001B ;先将片内RAM 30H单元1、2位清0
ORL 30H, #00011000B ;3、4位置1
XRL 30H, #01100000B ;5、6位取反
;然后交换高低四位,存入片外RAM 3000H单元
MOV A, 30H
SWAP A
MOV DPTR, #3000H
MOVX @DPTR, A
END