编写程序,完成下列逻辑功能:
Q = XYZ\F + XY\ZF + X\YZF + XYZF (\Y表示Y非,\Z表示Z非、、、)
这个逻辑表达式,可以化简,就是: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位)
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位
方法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
;-----------------------
关键字:单片机 位逻辑运算
引用地址:
用单片机实现位逻辑运算
推荐阅读最新更新时间:2024-03-16 16:02
基于LabVIEW的单片机串口通信设计与实现
1.概述 在现代测控系统中,我们经常会采用上位机和下位机的开发控制模式。下位机主要是用来采集数据,可以通过嵌入式控制器、单片机控制器、PLC等来实现。上位机主要是图形界面,用来实时显示采集数据,并进行数据分析及处理,同时可以控制下位机。上位机的实现可以通过各种高级语言,比如VB、Delphi等以及NI公司的图形化虚拟仪器软件开发环境LabVIEW.由于LabVIEW采用的是图形化的编程方法,所以无论你是否有过编程经验,都可以快速、高效地设计用户界面,实现与控制硬件的通信,并进行数据分析和处理。如今LabVIEW已经渗透到工业测量的各个领域,与此同时在嵌入式、FPGA、DSP、实时控制等领域也发挥着巨大的作用。 2.本实例实
[测试测量]
51单片机(七)—— LED进阶控制
在《51单片机(五)》和《51单片机(六)》中,我们对LED的控制比较简单,都只是点亮的操作,在本文中,我们进行一些相对复杂的操作,来更加熟悉单片机IO口的使用。 一、闪灯 在这个实验中,我们只对LED1进行控制,让它闪烁,代码如下所示 #include reg52.h //包含头文件,一般情况不需要改动, sbit LED1=P0^0; //用sbit关键字定义LED1到P00端口, /********************************************************************/ /* 延时函数 */ /*
[单片机]
基于单片机LED智能照明系统的设计
1 引言 LED 被称为第四代照明光源或绿色光源,LED的发光器件是冷光源, 具有节能、环保、寿命长、体积小等特点。白炽灯, 卤钨灯的光效为12 ~24lm /W,荧光灯50 ~ 70lm /W,钠灯90 ~ 140lm /W,而且大部分的耗电变成了热耗。LED 可达到50 ~200lm /W,而且单光的单色性好,光谱窄,无需过滤,可直接发出有色可见光。在相同照明效果的情况下,耗电量约为白炽灯的十分之一,荧光灯的二分之一。同样效果的一支日光灯40 多瓦,而采用LED 每支的功率只有8 瓦。LED 的平均寿命达10 万小时,安全可靠性强,不含汞,钠元素等可能危害健康的物质, 有利于环保, 被称为“绿色照明光源”。 2
[单片机]
单片机睡眠-外中断INT0 INT1唤醒(汇编+C语言程序)
跟大家分享在网上寻找好久资料之后又自己改编的一个可以睡眠的程序,可以用来进行对静态功耗有要求的项目。 单片机源程序如下: /************* 本程序功能说明 ************** 用STC的MCU的IO方式控制74HC595驱动8位数码管。 用户可以修改宏来选择时钟频率. 显示效果为: 上电后显示秒计数, 计数范围为0~255,显示在右边的3个数码管. 显示5秒后, 睡眠. 按板上的AW17 SW18唤醒, 继续计秒显示. 5秒后再睡眠. 如果MCU在准备睡眠时, AW17 SW18任一键或两键同时按着(INT0 INT1任一个或两个同时为低电平), 则MCU不睡眠, 直到
[单片机]
STC系列单片机内部AD的应用
下面一个例程演示STC89LE516AD/X2系列单片机的A/D转换功能。 时钟11.0592MHz, 转换结果以16进制形式输出到串行口,可以用串行口调试程序观察输出结果。(本代码摘自宏晶科技芯片手册,经作者调试可正常运行)。 #include reg52.H #include intrins.H // 定义与 ADC 有关的特殊功能寄存器 sfr P1_ADC_EN = 0x97; //A/D转换功能允许寄存器 sfr ADC_CONTR = 0xC5; //A/D转换控制寄存器 sfr ADC_DA TA = 0xC6; //A/D转换结果寄存器 typedef unsigned char I
[单片机]
单片机LCD12864链表实现贪吃蛇源码
单片机源程序如下: #include reg52.h #include stdlib.h #include lcd12864.h #define uchar unsigned char #define uint unsigned int #define Random(x) (rand()%x) #define dgrade 11 #define igrade 15 #define up 9 #define down 13 #define left 12 #define right 14
[单片机]
基于80C51单片机的多功能肌电测量仪设计
肌电测量或肌电图是检查人体神经、肌肉系统功能的重要方法,广泛应用于神经科、骨科、耳鼻喉科及口腔科。它可为临床诊断、治疗神经肌肉系统疾患提供客观的科学依据。肌电测量仪一般只具有在示波器上显示波形和记录波形的功能。早期,肌电信号通过照相对胶片进行显影才能看到;后来,把肌电信号描绘在肌电图纸上。这两种肌电信号记录法的机构都很复杂。这里介绍一种利用普通的示波器,通过单片机和A/D、D/A转换控制系统构成的,具有记忆、波形分析(诊断)功能和各种操作的实时处理的低功耗智能肌电测量仪。该肌电测量仪可实现一次采集后,多次重复显示、打印,实现了肌电信号测量仪的智能化 1 多功能肌电测量仪的硬件设计 1.1 系统硬件结构框图 系统硬件结构框图如图
[单片机]