📄 3.htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0053)http://www.hificat.com/study/c%20lesson/lesson7_3.htm -->
<HTML><HEAD><TITLE>杭州电子&计算机工作室 欢迎您! Welcome to HangZhou Electron & Computer Studio</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<STYLE type=text/css>A:link {
COLOR: #3366cc; TEXT-DECORATION: none
}
A:visited {
COLOR: #3366cc; TEXT-DECORATION: none
}
A:active {
COLOR: #3366cc; TEXT-DECORATION: none
}
A:hover {
COLOR: #3366cc; TEXT-DECORATION: underline
}
TD {
FONT-SIZE: 9pt; COLOR: #3366cc; FONT-FAMILY: "宋体"; TEXT-DECORATION: none
}
A {
FONT-SIZE: 9pt; COLOR: #3366cc; FONT-FAMILY: "宋体"; TEXT-DECORATION: none
}
.A {
FONT-SIZE: 9pt; COLOR: #3366cc; FONT-FAMILY: "宋体"; TEXT-DECORATION: none
}
.coast {
LINE-HEIGHT: 180%
}
.coast1 {
LINE-HEIGHT: 120%
}
.unnamed1 {
BORDER-RIGHT: #e0fdfe thin dotted; BORDER-TOP: #0099ff thin dotted; BORDER-LEFT: #0099ff thin dotted; BORDER-BOTTOM: #ffffff thin dotted
}
.unnamed2 {
BORDER-RIGHT: #e2fcfe thin dotted; BORDER-TOP: #0099ff thin dotted; BORDER-LEFT: #0099ff thin dotted; BORDER-BOTTOM: #ffffff thin dotted
}
.unnamed3 {
BORDER-RIGHT: #ffffff; BORDER-TOP: #0099ff thin; BORDER-LEFT: #ffffff thin; BORDER-BOTTOM: #0099ff
}
.unnamed4 {
BORDER-TOP-WIDTH: thick; BORDER-LEFT-WIDTH: thick; BORDER-LEFT-COLOR: #0099ff; BORDER-BOTTOM-WIDTH: thick; BORDER-BOTTOM-COLOR: #ffffff; BORDER-TOP-COLOR: #0099ff; BORDER-RIGHT-WIDTH: thick; BORDER-RIGHT-COLOR: #ffffff
}
</STYLE>
<META content="MSHTML 6.00.2900.2873" name=GENERATOR></HEAD>
<BODY text=#000000 bgColor=#def6ff
background=3.files/background_content_neu.gif>
<TABLE height=130 cellSpacing=0 cellPadding=0 width="100%" border=0>
<TBODY>
<TR vAlign=top>
<TD width=790 background=3.files/main-top.jpg height=140>
<TABLE cellSpacing=0 cellPadding=0 width=760 border=0>
<TBODY>
<TR>
<TD width=313 rowSpan=2><IMG height=1 src="3.files/1x1.gif"
width=1></TD>
<TD vAlign=bottom><IMG height=52 src="3.files/title1.jpg"
width=454></TD></TR>
<TR>
<TD vAlign=bottom> </TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE>
<TABLE height=167 cellSpacing=0 cellPadding=0 width=757 border=0>
<TBODY>
<TR>
<TD width=1 height=200> </TD>
<TD vAlign=top align=left width=756 height=200>
<TABLE cellSpacing=0 cellPadding=0 width="757%" border=0>
<TBODY>
<TR vAlign=top align=left>
<TD width=10 height=5><IMG height=11
src="3.files/kartei_oben_links.gif" width=10></TD>
<TD width=595 height=5><IMG height=11
src="3.files/kartei_oben_mitte.gif" width=399></TD>
<TD width=151 height=5> </TD></TR>
<TR vAlign=top align=left>
<TD width=10 bgColor=#0099ff height=10><IMG height=17
src="3.files/kartei_links.jpg" width=10></TD>
<TD class=textKlein vAlign=center align=left width=595 bgColor=#0099ff
height=10><B><FONT color=#ffffff>首页</FONT><FONT color=#ffffff>>
单片机教学(C语言教程)</FONT></B></TD>
<TD width=151 bgColor=#0099ff height=10> </TD></TR></TBODY></TABLE>
<TABLE cellSpacing=2 cellPadding=2 width="100%" border=0>
<TBODY>
<TR>
<TD>
<DIV class=title1
align=center><STRONG>第七课 运算符和表达式(3)</STRONG></DIV></TD></TR>
<TR>
<TD>
<DIV align=center>作 者: 明浩 出 处: 磁动力工作室 <A href="http://www.cdle.net/"
target=_blank>http://www.cdle.net/</A> <A
href="mailto:pnzwzw@cdle.net">mailto:pnzwzw@cdle.net</A>(ID111)</DIV></TD></TR>
<TR>
<TD><B>位运算符</B><BR>
学过汇编的朋友都知道汇编对位的处理能力是很强的,但是C语言也能对运算对象进行按位操作,从而使C语言也能具有一定的对硬件直接进行操作的能力。位运算符的作用是按位对变量进行运算,但是并不改变参与运算的变量的值。如果要求按位改变变量的值,则要利用相应的赋值运算。还有就是位运算符是不能用来对浮点型数据进行操作的。C51中共有6种位运算符。<BR>
位运算一般的表达形式如下:<BR> 变量1 位运算符 变量2<BR>
位运算符也有优先级,从高到低依次是:"~"(按位取反)→"<<"(左移) →">>"(右移)
→"&"(按位与)→"^"(按位异或)→"|"(按位或)<BR>表7-1是位逻辑运算符的真值表,X表示变量1,Y表示变量2
<BR><BR>
<TABLE cellSpacing=0 cellPadding=0 width="100%" border=1>
<TBODY>
<TR>
<TD>X</TD>
<TD>Y</TD>
<TD>~X</TD>
<TD>~Y</TD>
<TD>X&Y</TD>
<TD>X|Y</TD>
<TD>X^Y</TD></TR>
<TR>
<TD>0</TD>
<TD>0</TD>
<TD>1</TD>
<TD>1</TD>
<TD>0</TD>
<TD>0</TD>
<TD>0</TD></TR>
<TR>
<TD>0</TD>
<TD>1</TD>
<TD>1</TD>
<TD>0</TD>
<TD>0</TD>
<TD>1</TD>
<TD>1</TD></TR>
<TR>
<TD>1</TD>
<TD>0</TD>
<TD>0</TD>
<TD>1</TD>
<TD>0</TD>
<TD>1</TD>
<TD>1</TD></TR>
<TR>
<TD>1</TD>
<TD>1</TD>
<TD>0</TD>
<TD>0</TD>
<TD>1</TD>
<TD>1</TD>
<TD>0</TD></TR></TBODY></TABLE><BR>
<TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
<TBODY>
<TR>
<TD>
<DIV align=center>表7-1 按位取反,与,或和异或的逻辑真值表
</DIV></TD></TR></TBODY></TABLE>
<P> 利用以前建立起来的实验板,我们来做个实验验证一下位运算是否真是不改变参与变量的值,同时学习位运算的表达形式。程序很简单,用P1口做运算变量,P1.0-P1.7对应P1变量的最低位到最高位,通过连接在P1口上的LED我们便可以直观看到每个位运算后变量是否有改变或如何改变。程序如下:<BR>#include
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -