999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

原碼、反碼和補碼的教學(xué)探討

2015-05-30 12:05:34羅嘉慶周世杰徐潔
計算機教育 2015年10期

羅嘉慶 周世杰 徐潔

摘要:有符號數(shù)字的存儲包括原碼、反碼和補碼(國內(nèi)教材采用術(shù)語)3種表示,是許多計算機專業(yè)基礎(chǔ)課程的重要教學(xué)內(nèi)容,然而國內(nèi)外教材和網(wǎng)絡(luò)百科中的相關(guān)內(nèi)容存在很多不一致的地方,可能會導(dǎo)致教學(xué)中的困惑和誤區(qū)。文章將分別從講解思路、術(shù)語定義和數(shù)學(xué)本質(zhì)3方面進行對比分析并提出一些可能的改進建議,包括規(guī)范術(shù)語,注重計算機基本操作和相關(guān)數(shù)學(xué)概念,強調(diào)不同表示的產(chǎn)生原因、關(guān)系和符號位差異等。

關(guān)鍵詞:原碼;反碼;補碼

0.引言

數(shù)字存儲與數(shù)字計算緊密相連,是計算機專業(yè)的基礎(chǔ)課程,如計算機導(dǎo)論、計算機組成原理、匯編語言等,是要求學(xué)生理解和掌握的重要知識點。有符號數(shù)存儲涉及數(shù)字的符號,包括原碼、反碼和補碼,又是其中的教學(xué)難點,然而眾多國內(nèi)教材包括電子工業(yè)出版社的《8086/8088宏匯編語言程序設(shè)計教程》(1998年出版)、高等教育出版社的《數(shù)字電子技術(shù)基礎(chǔ)》(1998年出版,2001年重印)、電子工業(yè)出版社的《計算機組成原理》(2004年出版)和清華大學(xué)出版社的《匯編語言程序設(shè)計》(2009年出版)以及網(wǎng)絡(luò)百科包括百度百科和360百科(更新截止2014年11月18日),國外教材包括ComputerOrganization and Embedded System(2011年出版)和Foundations of Computer Science(2007年出版)以及網(wǎng)絡(luò)百科Wikipedia(更新截止2014年11月18日),對于有符號數(shù)存儲的講解內(nèi)容存在眾多不一致的地方,教師需要進一步分析與探討,以避免在教學(xué)過程中令學(xué)生產(chǎn)生誤解。

1、講解思路

1.1產(chǎn)生原因

有符號數(shù)字的存儲有3種表示:原碼、反碼和補碼。現(xiàn)在計算機大多選用補碼,早期部分計算機選用原碼或反碼,如IBM 709x系列采用原碼,PDP-1、CDC 160系列、CDC 6000系列、UNIVAC 1100系列和LINC計算機采用反碼。在教學(xué)過程中,學(xué)生通常會產(chǎn)生兩點疑惑:①為什么有符號數(shù)字有3種表示?②為什么計算機不選用相對直觀的原碼而選用晦澀難懂的補碼?國外網(wǎng)絡(luò)百科通過例子詳細說明了原碼和反碼在計算過程中可能出現(xiàn)的問題。具體而言,原碼的符號位不能參與計算,反碼的計算需要處理進位或借位,同時存在—0,只有補碼的計算能夠保持與無符號二進制數(shù)的計算一致。國內(nèi)教材和網(wǎng)絡(luò)百科往往從以下3方面描述:①數(shù)學(xué)表達式;②求解方法;③硬件設(shè)計的難易程度。相比較而言,國外網(wǎng)絡(luò)百科更有利于把握計算的本質(zhì),有助于學(xué)生理解不同表示產(chǎn)生的原因。

1.2基本方法

國外教材通常采用方法→表示的講解方式,即先介紹二進制中兩種補的方法(methods ofcomplement):眾一的補(ones' complement)和二的補(two's complement)。補的方法是一種只用正數(shù)的加法計算從一個數(shù)中減去另一個數(shù)的技術(shù)。 一個二進制數(shù)的眾一的補被定義為這個數(shù)的所有位取反(0變l,1變0)。一個n位二進制數(shù)的二的補被定義為2n的補,等同于眾一的補(取反運算)加1。然后,介紹兩種有符號數(shù)的表示:眾一的補表示(英文:ones'complement representation,中文:反碼)和二的補表示(英文:two's complement representation,中文:補碼)。眾一的補和二的補系統(tǒng)/計算(one's complement system/arithmetic and two'scomplement system/arithmetic)中的負數(shù),分別用它們對應(yīng)的正數(shù)的眾一的補和二的補表示。

部分國內(nèi)教材則采用表示→運算的講解方式,即先定義有符號二進制數(shù)的表示,即原碼、反碼和補碼,再定義一種補碼的運算——求補運算。具體而言,求補運算被定義為一個已為補碼表示的數(shù),連同符號位一起按位求反后,在最低位加補,這種定義容易混淆概念:①如果它對應(yīng)二的補,那么可以理解為一個數(shù)學(xué)操作符,輸入不僅僅限定為已為補碼表示的數(shù),例如,一個負數(shù)對應(yīng)正數(shù)的二進制表示;②如果這種定義對應(yīng)二的補算術(shù)(two's complement arithmetic),那么指代一個系統(tǒng),這個系統(tǒng)中一些基本的算術(shù)操作如加、減和乘就與尢符號二進制數(shù)的相同。此外,還可能會產(chǎn)生以下一些問題:當輸入一個二進制數(shù)時,計算機將如何鑒別這個數(shù)已為補碼表示(注意并非所有計算機都采用補碼)?如果不能鑒別,那么這種運算的意義何在?又將如何定義?

1.3求解過程

在求解有符號數(shù)表示時,國外教材出發(fā)點是數(shù)本身,給定一個有符號數(shù)χ,各種表示求解過程如下:

符號和數(shù)量表示(英文:sign and magnituderepresentation,中文:原碼):最高位為符號位,0表示正數(shù),1表示負數(shù),剩余位為x的數(shù)量(絕對值)。

眾一的補表示(反碼):如果x為L正數(shù),則是其二進制表示;如果χ為負數(shù),則是其對應(yīng)正數(shù)的位補(英文:bit complement/bitwise NOT,中文:按位取反)——執(zhí)行每一位邏輯否定的一元操作。

二的補表示(補碼):如果x為正數(shù),則是其二進制表示;如果x為負數(shù),則是其對應(yīng)正數(shù)的二的補(所有位取反后加1)。

在求解有符號數(shù)表示時,部分國內(nèi)教材出發(fā)點是原碼,同樣給定一個數(shù)x,各種表示求解方式如下:

原碼:最高位為符號位,其余位為χ的絕對值。

反碼:如果x為正數(shù),則與原碼相同;如果x為負數(shù),保持原碼符號位不變,其余位變反,

補碼:如果χ為正數(shù),則與原碼相同;如果χ為負數(shù),保持原碼符號位不變,其余化先變反,然后在末位加1。

在操作層面,國內(nèi)外教材求解結(jié)果一致,但在理解層面,國內(nèi)教材容易引起誤解:

(1)原碼、反碼和補碼之間的關(guān)系從原碼出發(fā)求解反碼和補碼,學(xué)生會誤以為原碼是后兩者的基礎(chǔ)。原碼的出發(fā)點是符號的表示(符號位),即用O表示正數(shù),用1表示負數(shù);反碼和補碼的出發(fā)點是減法的運算,即用兩個正數(shù)的加法取代兩個數(shù)的減法,因此反碼和補碼不能簡單理解為由原碼變換而成。

(2)原碼、反碼和補碼符號位的差異。求解反碼和補碼過程中,保持原碼符號位不變,學(xué)生會誤以為原碼、反碼和補碼的符號位相同。雖然符號位都表示數(shù)的正負,但是反碼和補碼與原碼符號位的差別在于它們有權(quán)重(weight),如補碼的符號位權(quán)重為—( 2n-l)。

2、術(shù)語定義

2.1完備性

國外教材關(guān)于術(shù)語定義從操作→方法→表示具有連貫性和一致性,國內(nèi)教材術(shù)語定義(包括譯著)存在混用和缺失的現(xiàn)象,表1對比了國內(nèi)外教材涉及有符號數(shù)字存儲的術(shù)語。

從表l可以看出,大部分國內(nèi)教材對方法的術(shù)語(眾一的補和二的補)缺乏明確的定義,即求解表示(眾一的補表示和二的補表示)的過程。正因如此,部分譯著將反碼和補碼與眾一的補和二的補(參見1.2節(jié)定義)對應(yīng),另一部分譯著將反碼和補碼與眾一的補表示和二的補表示(參見1.2節(jié)定義)對應(yīng),導(dǎo)致方法和表示的術(shù)語沖突。由此可見,在定義表示的形式化描述時,更應(yīng)該關(guān)注其求解方法的定義與內(nèi)涵。

此外,國內(nèi)教材對術(shù)語原碼/原碼表示法、反碼/反碼表示法和補碼/補碼表示法存在混用現(xiàn)象。具體而言,部分教材只使用原碼、反碼和補碼,另一部分教材將原碼/原碼表示法、反碼/反碼表示法和補碼/補碼表示法混合使用(沒有明確區(qū)分)。

2.2規(guī)范性

國外教材中的術(shù)語非常形象和直觀。例如,眾一的補中的“眾一”表示二進制數(shù)中的每一位都用l減去這一位替代(與按位取反效果相同);二的補中的“二”表示基數(shù)2;兩者中的“補”表明了它們之問的關(guān)系,即二的補等于眾一的補加1。國內(nèi)教材中的術(shù)語在認知上可能造成歧義。例如,原碼中的“原”有原始的意思,學(xué)生容易誤解為原碼是反碼和補碼的基礎(chǔ)。真值被定義為日常書寫習慣中用+或-表示的數(shù),英文中有與其沖突的術(shù)語truth value(同樣翻譯為真值),又稱為邏輯值(logical value),是指相對于真的程度。在經(jīng)典邏輯中,唯一可能的真值是真和假,模糊邏輯和其他形式的多值邏輯中會使用比真和假更多的真值。此外,國內(nèi)網(wǎng)絡(luò)百科將原碼翻譯為true form并不準確,對應(yīng)英文術(shù)語應(yīng)該是sign and magnitude representation。

3、數(shù)學(xué)本質(zhì)

3.1必要性

形式化的描述是一把雙刃劍,一方面能夠用數(shù)學(xué)語言準確地描述概念本質(zhì),另一方面會因為過度抽象而增加學(xué)生理解的難度。部分國內(nèi)教材對原碼、反碼和補碼都給出了數(shù)學(xué)表達式。原碼的定義本來非常直觀且容易理解,原碼用符號位表示數(shù)的正負,而符號位沒有權(quán)重,不能直接參與運算。原碼的數(shù)學(xué)表達式可能是一個由簡變繁的過程且存在以下一些問題:這種表達式的實質(zhì)和意義是什么?是否與原碼的定義相關(guān)?原碼沒有權(quán)重或值的符號位是否能夠通過算術(shù)運算來定義?將一個負數(shù)χ的原碼定義為2n-1-X,即表示符號位的值為2n-l,相應(yīng)的運算規(guī)則如何定義?

3.2準確性

國內(nèi)教材的數(shù)學(xué)表達存在細微差異。國外教材:在眾一的補表示中,一個負數(shù)χ被表示為其對應(yīng)正數(shù)的眾一的補,被定義為(2n-1)-(-X):在二的補表示中,一個負數(shù)x被表示為其對應(yīng)正數(shù)的二的補(相對于2n的補),被定義為2n-(一x)。國內(nèi)教材:一個負數(shù)x的反碼和補碼分別被定義為(2n-l)+x和2n+x。在計算層面,國內(nèi)外教材的運算結(jié)果一致,因為- ( -x)=x,但在理解層面,“減去一個正數(shù)”與“加上一個負數(shù)”存在明顯差異,失之毫厘,差之千里。計算機只能識別0和l組成的序列,負號并不存在。負數(shù)x可以表示為0-(-x),為了將減法轉(zhuǎn)換為加法,需要求-x(正數(shù))的算術(shù)負值。數(shù)學(xué)表達式(2n-l)+x和2n+x并不能準確描述這一過程。此外,部分國內(nèi)教材直接用模運算定義反碼和補碼,模運算可以用于解釋反碼和補碼如何工作,但并不能作為其正式定義,因為它不是相關(guān)概念的直接描述。

4、改進建議

國內(nèi)外教材的差異可能會導(dǎo)致教學(xué)困惑和誤區(qū)。為了澄清概念和消除誤區(qū),筆者提出以下幾點改進建議。

(1)統(tǒng)一術(shù)語:建議用“取一個數(shù)的反碼”和“取一個數(shù)的補碼”分別對應(yīng)“眾一的補”和“二的補”;用“反碼”和“補碼”分別對應(yīng)眾一的補和二的補后的結(jié)果;用“原碼表示”“反碼表示”和“補碼表示”分別對應(yīng)“符號和數(shù)量表示”“眾一的補表示”和“二的補表示”。

(2)修改方法:在講解求解過程時,保持與補的方法(眾一的補和二的補)一致,摒棄原碼的基礎(chǔ)上求解反碼和補碼的過程。

(3)更正定義:去掉原碼的數(shù)學(xué)表達式,將反碼和補碼的數(shù)學(xué)表達式更正為(2n-l)一(一x)和2n-(-x)。

(4)更新百科:網(wǎng)絡(luò)百科有時比教材更有影響力,因為許多學(xué)生遇到疑問都會在網(wǎng)上求答案。截止2014年11月28日,百度百科中反碼和補碼的瀏覽次數(shù)分別達到151 035和437 146,因此有必要規(guī)范和更新網(wǎng)絡(luò)百科的相關(guān)內(nèi)容,避免將教學(xué)誤區(qū)擴大化。

5、結(jié)語

通過對比國內(nèi)外教材和網(wǎng)絡(luò)百科,筆者發(fā)現(xiàn)國內(nèi)部分教材關(guān)于有符號數(shù)字存儲的相關(guān)內(nèi)容包括術(shù)語、概念和定義都有待進一步明確和清晰,建議統(tǒng)一術(shù)語,更正和修改定義和方法,更新網(wǎng)絡(luò)百科相關(guān)內(nèi)容,避免在教學(xué)過程中產(chǎn)生誤區(qū)。

主站蜘蛛池模板: 久久婷婷五月综合色一区二区| 人妻精品久久久无码区色视| 亚洲精品第1页| 亚洲三级影院| 欧美一级99在线观看国产| 亚洲综合精品香蕉久久网| 国产菊爆视频在线观看| 91久久性奴调教国产免费| 在线精品亚洲一区二区古装| 亚洲一区精品视频在线 | 五月激情综合网| 久久久久青草大香线综合精品 | 亚洲精品视频免费看| 日本一本正道综合久久dvd| 日日摸夜夜爽无码| 亚洲精品不卡午夜精品| 人妻少妇久久久久久97人妻| 91成人免费观看在线观看| 五月激激激综合网色播免费| 久久性视频| 91www在线观看| 青青草国产在线视频| 欧美亚洲国产日韩电影在线| 国产精品九九视频| 91娇喘视频| 国产又黄又硬又粗| 亚洲天堂成人在线观看| 国产欧美在线观看精品一区污| 国产白浆一区二区三区视频在线| 中文字幕亚洲第一| 欧美日韩成人在线观看| 色天天综合久久久久综合片| 97在线公开视频| 福利一区三区| 国产成人亚洲精品蜜芽影院| 国产区91| 91精品国产一区| 亚洲精品综合一二三区在线| 99精品国产高清一区二区| 91精品福利自产拍在线观看| 国产91视频免费| 国产精品太粉嫩高中在线观看| 久久国产精品77777| 国产在线观看91精品| 久久中文电影| 国产视频资源在线观看| A级毛片高清免费视频就| 91丝袜乱伦| 2020精品极品国产色在线观看 | 婷婷午夜天| 老司国产精品视频| 日韩无码白| 波多野结衣在线一区二区| 午夜精品久久久久久久99热下载| 久久久久久尹人网香蕉| 91成人在线观看| 亚洲永久精品ww47国产| 亚洲中文久久精品无玛| 亚洲中文制服丝袜欧美精品| 精品国产免费观看| 97久久超碰极品视觉盛宴| 中文字幕在线一区二区在线| 日韩毛片基地| 91视频精品| 澳门av无码| 亚洲欧洲日韩久久狠狠爱| a色毛片免费视频| jizz在线免费播放| 中文字幕 91| 欧美国产日本高清不卡| 99久久精品国产精品亚洲 | 欧美翘臀一区二区三区| 国产乱子伦视频三区| 国产欧美日韩视频一区二区三区| 国产精品无码AV片在线观看播放| 91精品国产无线乱码在线| 久久久久久久久18禁秘| 国产成人成人一区二区| 亚洲AV无码乱码在线观看代蜜桃 | 国产精品黄色片| 天天色综网| 国产凹凸视频在线观看|