用单片机实现位逻辑运算


编写程序,完成下列逻辑功能:


Q = XYZ\F + XY\ZF + X\YZF + XYZF   (\Y表示Y非,\Z表示Z非、、、)


题目链接:http://zhidao.baidu.com/question/197438177.html



做而论道回答如下:    (2010-11-13 23:29 提问者采纳)



这个逻辑表达式,可以化简,就是: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


提问者评价:谢谢你的热心帮助,让我学到很多,很感谢!


=============================


单片机:请编写程序实现位X与位Y异或运算。


2010-10-12 22:03无敌的中国人 | 分类:其他编程语言 | 浏览1546次


设X、Y分别存放在00H、01H,结果Z存放在02H。

(注意:00H、01H、02H是位地址,属于内部RAM20H的D0、D1、D2位)


请求如何做!!!求!!!!!!


题目链接:http://zhidao.baidu.com/question/190292515.html


做而论道编程如下:    (2010-10-13 00:18 提问者采纳)


    CLR  02H

    MOV  C, 00H

    ANL  C, 01H

    JC   _END_

    MOV  C, 00H

    ORL  C, 01H

    JNC  _END_

    SETB 02H


_END_:


;完


END


=============================


单片机:请编写程序实现位X、位Y 的异或运算。


设X、Y分别存放在 00H、01H,结果 Z 存放在02H。


注意:00H,01H,02H是位地址,属于内部RAM20H的D0,D1,D2位


题目链接:http://zhidao.baidu.com/question/431884485900294524.html


做而论道编程如下:    (2013-10-19 13:38)


方法1:

;

    MOV   C, 00H

    ANL   C, /01H

    MOV   F0, C

    MOV   C, 01H

    ANL   C, /00H

    ORL   A, F0

    MOV   02H, C


END


;-----------------------


方法2:

;

    CLR   02H

    JNB   00H, ZZZ

    JNB   01H, EXIT

    SJMP  EXIT

ZZZ:

    JB    01H, EXIT

    SETB  02H

EXIT:


END


;-----------------------


方法3:

;

    MOV   A, 20H

    RR    A

    XRL   A, 20H

    RL    A

    RL    A

    ANL   A, #00000100B

    JZ    ZZZ

    ORL   20H, A

    SJMP  EXIT

ZZZ:

    CPL   A

    ANL   20H, A

EXIT:


END


;-----------------------


提问者看到答案,就再也不来上网了。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值