吳奇霏
摘 要 有關(guān)高級語言和機(jī)器指令涉及到的運(yùn)算來看。定點(diǎn)運(yùn)算主要包括,無符號數(shù)的按位邏輯運(yùn)算,無符號數(shù)的邏輯移位運(yùn)算,無符號數(shù)的位擴(kuò)展運(yùn)算,和截斷運(yùn)算。無符號數(shù)的加減乘除運(yùn)算,帶符號整數(shù)的算術(shù)移位運(yùn)算,帶符號整數(shù)的擴(kuò)展運(yùn)算和極端與運(yùn)算,帶符號整數(shù)的加減乘除運(yùn)算等。無符號數(shù)的按位邏輯運(yùn)算可以用邏輯門電路實(shí)現(xiàn)。無符號數(shù)的邏輯移位運(yùn)算可用專門的移位器或許送結(jié)果等多種方式來實(shí)現(xiàn)。
關(guān)鍵詞 定點(diǎn)數(shù) 邏輯 加減乘除
中圖分類號:TP301 文獻(xiàn)標(biāo)識碼:A
0引言
帶符號數(shù)的移位運(yùn)算,無符號數(shù)和帶符號整數(shù)的位擴(kuò)展運(yùn)算。和截斷運(yùn)算也可用簡單電路較容易地實(shí)現(xiàn)。因此對于無符號數(shù)和帶符號整數(shù)的運(yùn)算。計算機(jī)內(nèi)部帶符號數(shù)基本都是用補(bǔ)碼表示,所以帶符號整數(shù)的運(yùn)算主要介紹補(bǔ)碼運(yùn)算。
1補(bǔ)碼加減運(yùn)算
在補(bǔ)碼方式向無論x 、y是正數(shù)還是負(fù)數(shù),加減運(yùn)算統(tǒng)一采用甲方來處理??梢院蛿?shù)值為一體的參與運(yùn)算,加減運(yùn)算結(jié)果的符號位也在求和運(yùn)算中直接得出。對于采用變形補(bǔ)碼的機(jī)器可以有其他的溢出判斷方法,在采用雙符號位時,證書的雙符號位是00,復(fù)數(shù)的雙符號位是11。兩個正數(shù)相加時若不溢出則數(shù)值為不應(yīng)向符號位產(chǎn)生進(jìn)位,兩個證書的雙符號位運(yùn)算為00+00等00結(jié)果為證,是正確的和的雙符號位。若溢出,則數(shù)值為肯定校服二位產(chǎn)生進(jìn)位此時兩個正數(shù)雙符號位的運(yùn)算為00+00+1等于01。兩個負(fù)數(shù)相加時路不易出左則豎直位移應(yīng)向符號位產(chǎn)生進(jìn)位兩個復(fù)數(shù)的雙符號位運(yùn)算為,1+1+1,mod4等于11結(jié)果為負(fù)。正好是正確的和合雙符號位。若溢出則數(shù)值為向符號位產(chǎn)生進(jìn)位。此時兩個復(fù)數(shù)的雙符號位運(yùn)算為,11加11mod4等10。因此運(yùn)算的實(shí)際結(jié)果為負(fù)數(shù),結(jié)果為溢出。由此可得變形補(bǔ)碼加減運(yùn)算的溢出判斷條件為,若結(jié)果的兩個符號為f n和f n減1不一致則產(chǎn)生溢出。
2原碼加減運(yùn)算
原碼加減運(yùn)算規(guī)則如下,比較兩個操作數(shù)的符號對家法實(shí)行同號求和異號求差對減法施行異號求和同號求差。求和時數(shù)值是一位相加若最高位產(chǎn)生進(jìn)位則結(jié)果溢出。和的符號位取被加數(shù)符號。求差時,被加數(shù)的數(shù)值位。加上加數(shù)的數(shù)值位的補(bǔ)碼,并按以下規(guī)則產(chǎn)生結(jié)果。最高數(shù)值為產(chǎn)生進(jìn)位,表明加法結(jié)果為證,所得數(shù)值為正確。最高數(shù)值為沒有產(chǎn)生進(jìn)位,表明加法結(jié)果為負(fù),得到的是數(shù)值位的補(bǔ)碼形式,因此,需要對結(jié)果求補(bǔ),還原為絕對值形成的數(shù)值為。
3移碼加減運(yùn)算
在進(jìn)行浮點(diǎn)數(shù)加減運(yùn)算中,需要比較兩個浮點(diǎn)數(shù)價碼的大小,在計算浮點(diǎn)數(shù)乘除運(yùn)算中,需要求價碼的和與差,因此浮點(diǎn)數(shù)運(yùn)算涉及到姨媽定點(diǎn)加減運(yùn)算。移動的和、差等于和差的補(bǔ)碼。移碼加減運(yùn)算主要用于浮點(diǎn)數(shù)乘除運(yùn)算中的價碼相加減。
4原碼乘法運(yùn)算
源碼作為浮點(diǎn)數(shù)尾數(shù)的表示形式。需要計算機(jī)能實(shí)現(xiàn)定點(diǎn)源碼小數(shù)的乘法運(yùn)算,根據(jù),每次部分既是一位相乘得到還是兩位相乘得到??梢杂性创a一位乘法和源碼兩位乘法,根據(jù)原碼兩位乘法的原理推廣,可以有源碼多位乘法。原碼一位乘法。用源碼實(shí)現(xiàn)乘法運(yùn)算時符號位于豎直為分開計算,因此原碼乘法運(yùn)算分為兩步。
(1)確定乘積的符號為,有兩個乘數(shù)的符號異或得到。
(2)計算乘積的數(shù)值為,乘積的數(shù)值部分為兩個乘數(shù)的數(shù)值部分之積。
(3)對于源碼定點(diǎn)小數(shù)的乘法運(yùn)算,只要根據(jù),無符號數(shù)的乘法運(yùn)算得到成績的數(shù)值部分,然后再加上符號位就可以得到最終源碼表示的成績,需要補(bǔ)充說明一點(diǎn)當(dāng)被乘數(shù)或乘數(shù)中至少有一個為全0結(jié)果直接得0不再進(jìn)行乘法運(yùn)算。
5源碼除法運(yùn)算
在進(jìn)行定點(diǎn)數(shù)除法運(yùn)算前首先要對被除數(shù)和除數(shù)的取值和大小進(jìn)行相應(yīng)的判斷,以確定除數(shù)是否為零,商是否為零是否溢出,或?yàn)椴淮_定的值nan。源碼作為浮點(diǎn)數(shù)尾數(shù)的表示形式需要計算機(jī)能實(shí)現(xiàn)定點(diǎn)源碼小數(shù)的除法運(yùn)算,除法運(yùn)算與乘法運(yùn)算很相似,都是一種移位和加減運(yùn)算的迭代過程,但比乘法運(yùn)算更加復(fù)雜。除法運(yùn)算的基本要點(diǎn)有,每次得到的差為中間余數(shù),將除數(shù)又迎候與上次的中間云數(shù)相比較,用中間余數(shù)減除數(shù)若構(gòu)件,則上商為1,若不夠減,則上商為0。源碼除法運(yùn)算與源碼乘法運(yùn)算一樣要將符號位和數(shù)值為分開來處理。
6總結(jié)
定點(diǎn)數(shù)運(yùn)算和浮點(diǎn)數(shù)運(yùn)算,他們各自用不同的運(yùn)算部件實(shí)現(xiàn),其中都有用道具具有基本算術(shù)運(yùn)算和邏輯運(yùn)算功能的alu,alu中的核心電路是加法器,因而快速加法器的實(shí)現(xiàn)是非常重要的。
參考文獻(xiàn)
[1] 林雪玲.基于計算機(jī)軟件工程的現(xiàn)代化技術(shù)[J].電子測試,2014(17):132-133+146.
[2] 鐘淑平.計算機(jī)軟件工程的現(xiàn)代化技術(shù)研究[J].信息與電腦(理論版),2016(02):50-52.
[3] 袁婷.關(guān)于計算機(jī)軟件工程的現(xiàn)代化技術(shù)研究[J].科技傳播,2016(03):96+99.
[4] 遲浩.基于計算機(jī)軟件工程的現(xiàn)代化技術(shù)[J].計算機(jī)光盤軟件與應(yīng)用,2015(01):69-70.
[5] 王東雪.基于計算機(jī)軟件工程的現(xiàn)代化技術(shù)研究[J].電子技術(shù)與軟件工程,2015(23):84.