版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第八章位運算
南因號船現(xiàn)代我有技東中芯
2004年5月制作
本章主要內(nèi)容
■c語言既是一種高級語言,廣泛應(yīng)用于應(yīng)用軟
件的開發(fā)和程序設(shè)計,同時又是一種低級語言,
可以用于系統(tǒng)軟件的開發(fā)和程序設(shè)計,如自動
控制系統(tǒng)中的過程控制、參數(shù)檢測、數(shù)據(jù)通訊
等控制程序,都可以綜合利用c語言中的指針
操作、位運算和位段技術(shù)來實現(xiàn)。
本章介紹位運算的基本形式和常用運算符,并
簡要介紹位段的概念。位運算的深入學(xué)習(xí),應(yīng)
該在《計算機原理》和《匯編語言程序設(shè)計》
課程中進行。
莆田學(xué)院現(xiàn)代教育技術(shù)中心2004年5月
、位運算符和位運算
■位運算概述
所謂“位運算”,是指按二進制位進行運算。
?位運算的特點:運算按二進制逐位進行——沒
有借彳立和接彳立。
“位運算量:整型(int,short,unsiged,long)/字
符型(以補碼/ASCII碼形式存儲),不可為實
型。
?位運算符:P298表12.1
&1A???
莆田學(xué)院現(xiàn)代教育技術(shù)中心2004年5月
、位運算符和位運算
位運算符還可與賦值運算符相結(jié)合,進行位運
算賦值操作。如:
a&=b等價于a=a&b
a?=b等價于a=a?b
■注意:位運算時的數(shù)據(jù)類型為char/int,分析
時要化為二進制形式,但在程序中書寫及輸出
結(jié)果時仍為char/int。
莆田學(xué)院現(xiàn)代教育技術(shù)中心2004年5月
位運算符的使用
按位與&(均為1時方為1)
【例一】計算
main()010000(a)
&011000(b)
010000
unsignedchara,b;
printf(Tnteraandb:");001010(a)
&010000(b)
u,5
scanf(%o,%o,&a,&b);000000
printf(ua&b=%o\n55,a&b);
)
Enteraandb:20,30Enteraandb:12,20
a&b=20a&b=0
莆田學(xué)院現(xiàn)代教育技術(shù)中心2004年5月
位運算符的使用
按位或|(均為0時方為0)
【例二】計算
main()010000(a)
I011000(b)
011000
unsignedchara,b;
printf(Tnteraandb:");001010(a)
I010000(b)
u,5
scanf(%o,%o,&a,&b);011010
printf(ua|b=%o\n,,,a|b);
)
Enteraandb:20,30Enteraandb:12,20
a|b=30a|b=32
莆田學(xué)院現(xiàn)代教育技術(shù)中心2004年5月
位運算符的使用
按位異或八(二者相異方為1)
【例三】以下程序的功能是將。數(shù)據(jù)的低4位取反。
#include<stdio.h>
main()計算
(00111001(a)
unsignedchara=0x39,b=人00001111(b)
a=aAb;00110110
printf("%x\n",a);
答案:OxOf
莆田學(xué)院現(xiàn)代教育技術(shù)中心2004年5月
位運算符的使用
按位取反~(各位反轉(zhuǎn))
【例四】計算
main()~a:
(補碼:11111100
chara=3;原碼:10000100
intb=10;?b:
printf(''~a=%d,~b=%d\rT,~a「補碼
)原碼:10001011
結(jié)果:?a=-4,?b=Tl
莆田學(xué)院現(xiàn)代教育技術(shù)中心2004年5月
位運算符的使用
?左移運算?
a?n將a中各位向左移n位,右端補0,高位溢出丟棄。
例:
【例五】以下程序的運行結(jié)果是_____O
main()
(
unsignedinta=0x3ef,b;
b=a?2;
printf("%x,%x\n",a,b);
}
A)3ef,fbB)3ef,fbcC)fbc,3efD)fbc,fbc
莆田學(xué)院現(xiàn)代教育技術(shù)中心2004年5月
位運算符的使用
■左移運算?
計算
【例六】以下程序的運行結(jié)5已知:0x1f5為111110101
main()且:Ta為1100
???2<<3為1100000
inta=12,b;111110101
b=0x1f5&a?3;&001100000
printf("%d,%d\n"Ja,b);
}001100000=96
結(jié)果:12,96
莆田學(xué)院現(xiàn)代教育技術(shù)中心2004年5月
位運算符的使用
■右移運算?
a?n將a中各位右移n位,溢出則舍棄。
左端----
?a為正數(shù)時(符號位為0),填0;
aa為負數(shù)時(符號位為1),填?;蛱?與系統(tǒng)有關(guān)
填0(邏輯右移)
填1(算術(shù)右移)TC使用算術(shù)右移
莆田學(xué)院現(xiàn)代教育技術(shù)中心2004年5月
位運算符的使用
?右移運算?
【例七】以下程序的運行結(jié)果是_____
main()
(
inta=9,b=-9;
printf("%d,%d",a?2,b?2);
}
結(jié)果:2,-3
(-9的補碼:1111111111110111,
右移后為1111111111111101)o
莆田學(xué)院現(xiàn)代教育技術(shù)中心2004年5月
應(yīng)用示例
①從整數(shù)a最右端am=10n=3
[「IITIIIIllIIII[III
第m個位置開始[15|14|13|12|10|9|817|6|5|4|3|2|“0|
取該位開始右面b=a?(10-3+1)S!a?8
n位。jo|。|o|o|o|o|o|0I15I14I13I12I11I10I9|8|
算法如下:
-O?3
b=a?(m-n+1)I」「I」V「1”T”「I”。1。1。1
c=~(~O?n)c=*(*O?n)=~(*O?3)
_L------1
d=b&c「0|0|0|U|0巨|0|0|0|0|0|0|011I1I1I
注:位自右向左d=b&c
從0開始編號|o|o|o|o|o|o|o|o|o|o|o|u|u|io|9|8|
莆田學(xué)院現(xiàn)代教育技術(shù)中心2004年5月
應(yīng)用示例
莆田學(xué)院現(xiàn)代教育技術(shù)中心2004年5月
二、位段
c語言允許在一個結(jié)構(gòu)體中以位為單位來指定
其成員所占內(nèi)存長度。這種以位為單位的成員
稱為“位段”。
莆田學(xué)院現(xiàn)代教育技術(shù)中心2004年5月
示例
structdata
(
inti;/*非位段*/
unsignedinta:3;/*占3位*/
unsignedintb:5;/*占5位*/
unsignedint:3;/*無
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024簡短房屋租賃合同
- 2024國際技術(shù)服務(wù)合同(2)
- 新概念英語第一冊語法總結(jié)
- 鋼琴采購合同
- 公司項目部負責(zé)人安全培訓(xùn)試題及答案達標題
- 4月憲法宣傳月的方案
- 幼兒園防恐防暴應(yīng)急處置預(yù)案
- 中小學(xué)目標管理責(zé)任制考核方案
- 工廠車間安全培訓(xùn)試題答案下載
- 護士個人工作總結(jié)精
- 新課標-人教版數(shù)學(xué)六年級上冊第五單元《圓》單元教材解讀
- 部編版四年級語文上冊第三單元復(fù)習(xí)課件
- 中建鋼-混凝土組合簡支梁施工方案
- 《線性代數(shù)》課件-第四章 向量組的線性相關(guān)性
- 工會法人變更登記申請表
- 名著導(dǎo)讀《紅星照耀中國》知識點梳理
- 中考名著《紅星照耀中國》練習(xí)題
- 幼兒園戶外自主游戲
- 浙教版勞動教育二年級上冊項目三 任務(wù)二廢舊物品巧利用教學(xué)課件含微課視頻
- 遼寧省沈陽市四十三中學(xué)教育集團2023-2024學(xué)年七年級上學(xué)期期中地理試題
- LCM出貨檢驗標準
評論
0/150
提交評論