?? ch04.1.htm
字號:
readability purposes that parentheses be used to show very clearly the precedenceintended, as in the following rewrite of the above example:</P><PRE>(a < size-1) && (b != c) && (index != lastone)</PRE><P><P CLASS="Body"><A NAME="pgfId=608"></A>3. A common use of <CODE>!</CODE>is in constructions like the following:</P><PRE><B>if</B> (!inword)</PRE><P><P CLASS="Body"><A NAME="pgfId=610"></A>In some cases, the precedingconstruct makes more sense to someone reading the code than the equivalentconstruct shown below:</P><PRE><B>if</B> (inword == 0)</PRE><P><P CLASS="Body"><A NAME="pgfId=612"></A>Constructs like <CODE>if</CODE>(<CODE> !</CODE> <CODE>inword</CODE> ) read quite nicely (if not inword),but more complicated ones can be hard to understand.</P><P><P CLASS="SubSection"><A NAME="pgfId=615"></A>Bit-wise operators</P><P><P CLASS="Body"><A NAME="pgfId=463"></A>The <I>bit-wise operators</I>shall perform bit-wise manipulations on the operands--that is, the operatorshall combine a bit in one operand with its corresponding bit in the otheroperand to calculate one bit for the result. The logic tables below showthe results for each possible calculation.</P><P><TABLE BORDER="1" CELLSPACING="2" CELLPADDING="2"><CAPTION ALIGN="TOP"><P CLASS="TableTitle"><A NAME="pgfId=7791"></A>Table 4-11: Bit-wisebinary and operator</CAPTION><TR><TH><P CLASS="CellHeading"><A NAME="pgfId=7801"></A>&</TH><TH><P CLASS="CellHeading"><A NAME="pgfId=7803"></A>0</TH><TH><P CLASS="CellHeading"><A NAME="pgfId=7805"></A>1</TH><TH><P CLASS="CellHeading"><A NAME="pgfId=7807"></A>x</TH><TH><P CLASS="CellHeading"><A NAME="pgfId=7809"></A>z</TH></TR><TR><TD><P CLASS="CellBody"><A NAME="pgfId=7811"></A>0</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7813"></A>0</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7815"></A>0</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7817"></A>0</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7819"></A>0</TD></TR><TR><TD><P CLASS="CellBody"><A NAME="pgfId=7821"></A>1</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7823"></A>0</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7825"></A>1</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7827"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7829"></A>x</TD></TR><TR><TD><P CLASS="CellBody"><A NAME="pgfId=7831"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7833"></A>0</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7835"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7837"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7839"></A>x</TD></TR><TR><TD><P CLASS="CellBody"><A NAME="pgfId=7841"></A>z</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7843"></A>0</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7845"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7847"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7849"></A>x</TD></TR></TABLE></P><P><TABLE BORDER="1" CELLSPACING="2" CELLPADDING="2"><CAPTION ALIGN="TOP"><P CLASS="TableTitle"><A NAME="pgfId=7857"></A>Table 4-12: Bit-wisebinary exclusive or operator</CAPTION><TR><TH><P CLASS="CellHeading"><A NAME="pgfId=7867"></A>^</TH><TH><P CLASS="CellHeading"><A NAME="pgfId=7869"></A>0</TH><TH><P CLASS="CellHeading"><A NAME="pgfId=7871"></A>1</TH><TH><P CLASS="CellHeading"><A NAME="pgfId=7873"></A>x</TH><TH><P CLASS="CellHeading"><A NAME="pgfId=7875"></A>z</TH></TR><TR><TD><P CLASS="CellBody"><A NAME="pgfId=7877"></A>0</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7879"></A>0</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7881"></A>1</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7883"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7885"></A>x</TD></TR><TR><TD><P CLASS="CellBody"><A NAME="pgfId=7887"></A>1</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7889"></A>1</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7891"></A>0</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7893"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7895"></A>x</TD></TR><TR><TD><P CLASS="CellBody"><A NAME="pgfId=7897"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7899"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7901"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7903"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7905"></A>x</TD></TR><TR><TD><P CLASS="CellBody"><A NAME="pgfId=7907"></A>z</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7909"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7911"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7913"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7915"></A>x</TD></TR></TABLE></P><P><TABLE BORDER="1" CELLSPACING="2" CELLPADDING="2"><CAPTION ALIGN="TOP"><P CLASS="TableTitle"><A NAME="pgfId=7922"></A>Table 4-13: Bit-wisebinary exclusive or operator</CAPTION><TR><TH><P CLASS="CellHeading"><A NAME="pgfId=7932"></A>^</TH><TH><P CLASS="CellHeading"><A NAME="pgfId=7934"></A>0</TH><TH><P CLASS="CellHeading"><A NAME="pgfId=7936"></A>1</TH><TH><P CLASS="CellHeading"><A NAME="pgfId=7938"></A>x</TH><TH><P CLASS="CellHeading"><A NAME="pgfId=7940"></A>z</TH></TR><TR><TD><P CLASS="CellBody"><A NAME="pgfId=7942"></A>0</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7944"></A>0</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7946"></A>1</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7948"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7950"></A>x</TD></TR><TR><TD><P CLASS="CellBody"><A NAME="pgfId=7952"></A>1</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7954"></A>1</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7956"></A>0</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7958"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7960"></A>x</TD></TR><TR><TD><P CLASS="CellBody"><A NAME="pgfId=7962"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7964"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7966"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7968"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7970"></A>x</TD></TR><TR><TD><P CLASS="CellBody"><A NAME="pgfId=7972"></A>z</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7974"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7976"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7978"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=7980"></A>x</TD></TR></TABLE></P><P><TABLE BORDER="1" CELLSPACING="2" CELLPADDING="2"><CAPTION ALIGN="TOP"><P CLASS="TableTitle"><A NAME="pgfId=7987"></A>Table 4-14: Bit-wisebinary exclusive nor operator</CAPTION><TR><TH><P><P CLASS="CellHeading"><A NAME="pgfId=7997"></A>^~</P><P><P CLASS="CellHeading"><A NAME="pgfId=7998"></A>~^</TH><TH><P CLASS="CellHeading"><A NAME="pgfId=8000"></A>0</TH><TH><P CLASS="CellHeading"><A NAME="pgfId=8002"></A>1</TH><TH><P CLASS="CellHeading"><A NAME="pgfId=8004"></A>x</TH><TH><P CLASS="CellHeading"><A NAME="pgfId=8006"></A>z</TH></TR><TR><TD><P CLASS="CellBody"><A NAME="pgfId=8008"></A>0</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8010"></A>1</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8012"></A>0</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8014"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8016"></A>x</TD></TR><TR><TD><P CLASS="CellBody"><A NAME="pgfId=8018"></A>1</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8020"></A>0</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8022"></A>1</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8024"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8026"></A>x</TD></TR><TR><TD><P CLASS="CellBody"><A NAME="pgfId=8028"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8030"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8032"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8034"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8036"></A>x</TD></TR><TR><TD><P CLASS="CellBody"><A NAME="pgfId=8038"></A>z</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8040"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8042"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8044"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8046"></A>x</TD></TR></TABLE></P><P><TABLE BORDER="1" CELLSPACING="2" CELLPADDING="2"><CAPTION ALIGN="TOP"><P CLASS="TableTitle"><A NAME="pgfId=1134"></A>Table 4-15: Bit-wiseunary negation operator</CAPTION><TR><TH><P CLASS="CellHeading"><A NAME="pgfId=1136"></A>~</TH><TH><P CLASS="CellHeading"><A NAME="pgfId=1137"></A> </TH></TR><TR><TD><P CLASS="CellBody"><A NAME="pgfId=1138"></A>0</TD><TD><P CLASS="CellBody"><A NAME="pgfId=1139"></A>1</TD></TR><TR><TD><P CLASS="CellBody"><A NAME="pgfId=1140"></A>1</TD><TD><P CLASS="CellBody"><A NAME="pgfId=1141"></A>0</TD></TR><TR><TD><P CLASS="CellBody"><A NAME="pgfId=1142"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=1143"></A>x</TD></TR><TR><TD><P CLASS="CellBody"><A NAME="pgfId=1144"></A>z</TD><TD><P CLASS="CellBody"><A NAME="pgfId=1145"></A>x</TD></TR></TABLE><P CLASS="Body"><A NAME="pgfId=1133"></A>When the operands are of unequalbit length, the shorter operand is zero-filled in the most significant bitpositions.</P><P><P CLASS="SubSection"><A NAME="pgfId=1132"></A>Reduction operators</P><P><P CLASS="Body"><A NAME="pgfId=622"></A>The <I>unary reduction operators</I>shall perform a bit-wise operation on a single operand to produce a singlebit result. The first step of the operation shall apply the operator betweenthe first bit of the operand and the second--using the logic tables shownbelow. The second and subsequent steps shall apply the operator betweenthe one-bit result of the prior step and the next bit of the operand usingthe same logic table.</P><P> </P><P><TABLE BORDER="1" CELLSPACING="2" CELLPADDING="2"><CAPTION ALIGN="TOP"><P CLASS="TableTitle"><A NAME="pgfId=8059"></A>Table 4-16: Reduction unaryand operator</CAPTION><TR><TH><P CLASS="CellHeading"><A NAME="pgfId=8069"></A>&</TH><TH><P CLASS="CellHeading"><A NAME="pgfId=8071"></A>0</TH><TH><P CLASS="CellHeading"><A NAME="pgfId=8073"></A>1</TH><TH><P CLASS="CellHeading"><A NAME="pgfId=8075"></A>x</TH><TH><P CLASS="CellHeading"><A NAME="pgfId=8077"></A>z</TH></TR><TR><TD><P CLASS="CellBody"><A NAME="pgfId=8079"></A>0</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8081"></A>0</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8083"></A>0</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8085"></A>0</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8087"></A>0</TD></TR><TR><TD><P CLASS="CellBody"><A NAME="pgfId=8089"></A>1</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8091"></A>0</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8093"></A>1</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8095"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8097"></A>x</TD></TR><TR><TD><P CLASS="CellBody"><A NAME="pgfId=8099"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8101"></A>0</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8103"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8105"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8107"></A>x</TD></TR><TR><TD><P CLASS="CellBody"><A NAME="pgfId=8109"></A>z</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8111"></A>0</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8113"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8115"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8117"></A>x</TD></TR></TABLE></P><P><TABLE BORDER="1" CELLSPACING="2" CELLPADDING="2"><CAPTION ALIGN="TOP"><P CLASS="TableTitle"><A NAME="pgfId=8124"></A>Table 4-17: Reductionunary or operator</CAPTION><TR><TH><P CLASS="CellHeading"><A NAME="pgfId=8134"></A>|</TH><TH><P CLASS="CellHeading"><A NAME="pgfId=8136"></A>0</TH><TH><P CLASS="CellHeading"><A NAME="pgfId=8138"></A>1</TH><TH><P CLASS="CellHeading"><A NAME="pgfId=8140"></A>x</TH><TH><P CLASS="CellHeading"><A NAME="pgfId=8142"></A>z</TH></TR><TR><TD><P CLASS="CellBody"><A NAME="pgfId=8144"></A>0</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8146"></A>0</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8148"></A>1</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8150"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8152"></A>x</TD></TR><TR><TD><P CLASS="CellBody"><A NAME="pgfId=8154"></A>1</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8156"></A>1</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8158"></A>1</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8160"></A>1</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8162"></A>1</TD></TR><TR><TD><P CLASS="CellBody"><A NAME="pgfId=8164"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8166"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8168"></A>1</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8170"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8172"></A>x</TD></TR><TR><TD><P CLASS="CellBody"><A NAME="pgfId=8174"></A>z</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8176"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8178"></A>1</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8180"></A>x</TD><TD><P CLASS="CellBody"><A NAME="pgfId=8182"></A>x</TD></TR>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -