第3章計(jì)算機(jī)組成原理-計(jì)算機(jī)微機(jī)原理圖解_第1頁
第3章計(jì)算機(jī)組成原理-計(jì)算機(jī)微機(jī)原理圖解_第2頁
第3章計(jì)算機(jī)組成原理-計(jì)算機(jī)微機(jī)原理圖解_第3頁
第3章計(jì)算機(jī)組成原理-計(jì)算機(jī)微機(jī)原理圖解_第4頁
第3章計(jì)算機(jī)組成原理-計(jì)算機(jī)微機(jī)原理圖解_第5頁
已閱讀5頁,還剩44頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

3.計(jì)算機(jī)組成原理

3.1.計(jì)算機(jī)中的基本數(shù)字電路

3.1.1.介紹說明

介紹計(jì)算機(jī)中的基本數(shù)字電路,如譯碼器、編碼器、多路器、移位器、寄存

器、鎖存器、移位寄存器、計(jì)數(shù)器、加法器,等等。

由于數(shù)字電路章節(jié)已有詳細(xì)說明。所以本章只要列出數(shù)字電路功能。

-56-

點(diǎn)cu-tra空

0半加器設(shè)計(jì)

3.1.2.

半加器真值表

+y

xycs

0000

0101

1001邏輯圖:

1110

-

邏輯表達(dá)式:S4聲尸XS,干EDs

c=xy

3.1.3.全加器設(shè)計(jì)

全加器真值表邏輯表達(dá)式:

輸入輸出s=a?b?q+a?b?Cj+a?b?q+a?b?

abqq_iS=a?b?C1

3.1.4.譯碼器設(shè)計(jì)

譯碼器的功能:輸入是n個(gè),輸出是2n個(gè),以3:8譯碼器為例。

真值表:

_________輸入輸出

2-D。

Do0~C~C-C1

譯00110

D]01000

碼01100

D;器10000

10100

11000

11100

邏輯表達(dá)式:

-57-

滋cu-tra空

0F0=D[D]DoF】=DHDJDQ

F2=RDfO。F3=RDIDO

F4=DJ-DJTJQF$=D^DiDo

F6=D;D]'D0F^DJDJDQ

譯碼器電路圖:

3.1.5.編碼器

編碼器的功能:?個(gè)編碼器一般有2"個(gè)輸入和n個(gè)輸出。以8:3編碼器為例。

真隹表:場(chǎng)人場(chǎng)出

;::

D-QD.D,DD,DtD&FFo

——?上000000001000

編00000010001

------>F]00000100010

碼00001000011

器____F.00010000100

,00100000101

01000000110

10000000111

邏輯表達(dá)式:

F0=D1+D3+D5+D7Fl=D2+D3+D6+D7F2=D4+D5+D6+D7

3.1.6.多路器的設(shè)計(jì)

多路器的功能:從20個(gè)輸入數(shù)據(jù)中選擇一個(gè)并把它送到輸出端。到底選擇哪一個(gè)

輸入數(shù)據(jù)由n位選擇信號(hào)決定。

多路選擇器的真值表

-58-

滋cu-tra空

0選擇輸入輸出

S1SoF

00

01

10

11

邏輯表達(dá)式:

F=SR0A3+SISQA?+S]SQA]+S]SpA^

多路選擇器電路圖

3.1.7.時(shí)序電路

令D鎖存器

令D觸發(fā)器

令J-K觸發(fā)器

令寄存器

令移位寄存器

3.1.8.觸發(fā)器

觸發(fā)器(trigger)是計(jì)算機(jī)的記憶裝置的基本單元,也可說是記憶細(xì)胞。觸

發(fā)器可以組成寄存器,寄存器又可以組成存儲(chǔ)器。寄存器和存儲(chǔ)器統(tǒng)稱為計(jì)算機(jī)

的記憶裝置。

任何一個(gè)復(fù)雜的電路系統(tǒng)都可以劃分為若干電路,這些電路大都由一些典型

的電路組成。微型計(jì)算機(jī)就是由若干典型電路通過精心設(shè)計(jì)而組成的,各個(gè)典型

電路在整體電路系統(tǒng)中乂稱為基本電路部件。

-59-

點(diǎn)cu-tra空於cu-te。

0計(jì)數(shù)器(counter)也是由若干個(gè)觸發(fā)器組成的寄存器,它的特點(diǎn)是能夠把存0

儲(chǔ)在其中的數(shù)字加lo

計(jì)數(shù)器的種類很多,有行波計(jì)數(shù)器、同步計(jì)數(shù)器、環(huán)形計(jì)數(shù)器和程序計(jì)數(shù)器

等。

3.1.9.算術(shù)邏輯單元

這個(gè)部件既能進(jìn)行二進(jìn)制數(shù)的四則運(yùn)算,也能進(jìn)行布爾代數(shù)的邏輯運(yùn)算。

ALU的符號(hào)一般畫成圖那樣。A和B為兩個(gè)二進(jìn)制數(shù),S為其運(yùn)算結(jié)果,control

為控制信號(hào)(如加、減、乘、除)。

AB

ALUcontrol

ir

s

3?l.10.計(jì)算機(jī)分類

復(fù)

器H

莘ftKf

」*

/

i4*

可以說明.今天的中型機(jī)可能就是明天的小型機(jī).

I能就是明天的崗生機(jī).而今天區(qū)微型機(jī)可能就是印天匹單片機(jī)。

-60-

0滋cu-tra空

3.2.數(shù)制編碼

3.2.1.計(jì)算機(jī)數(shù)值表示

c原碼表示

,邏輯數(shù)值一

「定點(diǎn)整數(shù)4補(bǔ)碼表示

浮點(diǎn)數(shù)值

/數(shù)值編碼1I移碼表示

、定點(diǎn)數(shù)

廠原碼表示

數(shù)據(jù)編碼4

西文I定點(diǎn)小數(shù)-

字符編碼補(bǔ)碼表示

中文

3.2.2,定點(diǎn)整數(shù)

3.2.2.1.原碼表示

(1)原碼格式

n-1n-2n-33210

格式rm..…iiii

第n-l位為符號(hào)位。n-2位一0位為數(shù)的絕對(duì)值。

=0,表示正整數(shù);

第n-l位區(qū)果=

=1,表示負(fù)整數(shù);

例如:6,原碼表示是:x=0110

例如:-6,原碼表示是:x=-0110

(2)原碼數(shù)值表示范圍

-61-

點(diǎn)cu-tra空

0機(jī)器數(shù)真值

n-1n-2n-33210

正最小值:000......0000+0

n-1n-2n-33210

正最大值:011......1111+(2匹1)

n-1n-2n-33210

負(fù)最大值:100......0000-0

n-1n-2n-33210

負(fù)最小值:111......1111-(2n4-l)

3.2.2.2.補(bǔ)碼表示

(1)補(bǔ)碼格式

n-1n-2n-33210

格式

第n-1位為符號(hào)位。

f=0,表示正整數(shù)

第n-唯國補(bǔ)=

〔=1,表示負(fù)整數(shù)

例如:6,補(bǔ)碼表不是:x=0110

例如:-6,補(bǔ)碼表示是:x=-0110

-6=24-6=10000-0110=1010

(2)補(bǔ)碼取反加1

(X,x>=0;

團(tuán)樸=\

n

I2-|x|=[x]^+lsx=<-l

證明:

2n-|X|=111……11+1-|X|=111……11-|X|+1=[X]^+1

從n-1位到啦100000

-01001

10111

例如求-9的補(bǔ)碼:10111

網(wǎng)補(bǔ)匚二>01001=>1011010111

|-9|[9]g+1

(3)補(bǔ)碼數(shù)值表示范圍

-62-

點(diǎn)cu-tra空

0機(jī)器數(shù)

真值

n-1n-2n-33210

正最小值:00000000

n-1n-2n-33210

n4

正最大值:1111+(2-l)

n-1n-2n-33210

負(fù)最大值0:000.?????0000

n-1n-2n-33210

負(fù)最大值:1111111

n-1n-2n-33210

負(fù)最小值:1000000

3.2.23.移碼表示

(1)移碼格式

n-1n-2n-33210

格式rm?…“iiii

[x]^=x鏘*3值=x+(2"i-l)

x=因歹移的值=[x]^-(2nl-l)

3.2.3,定點(diǎn)小數(shù)

3.23.1.原碼表示

(1)原碼格式

0123n-3n-2n-1

格式......................

第范為符號(hào)位1位一位為數(shù)的絕對(duì)值。

r=o,表示正整數(shù)rx,0<=x<l:

岡薩

I=i,表示負(fù)整數(shù)

l+|x|s-l<x<=0

例如:0.75,原碼表示是:[x]a=|0|1|1|0

Wn:-0.75,原碼表示是:[x.=|1I1I1B

(2)原碼數(shù)值表示范圍

-63-

點(diǎn)cu-tra空

0機(jī)器數(shù)真值

0123n-3n-2n-1

正最小值:0000......000+0

0123n-3n-2n-]

]_2-Cn-l)

正最大值:0111......111

0123n-3n-2n-1

負(fù)最大值:100......000-0

0123n-3n-2n-1

負(fù)最小值:1111.......111-(1-2?2))

(3)1-2-(n-1)公式說明

0123n-3n-2n-1

5?1)

正最大值:|00|11|11|11|......|1|1|1

1.00000...0

0.0000...01

011111.1

3.23.2.補(bǔ)碼表示

(1)補(bǔ)碼格式

0123n-3n-2n-1

格式

第應(yīng)為符號(hào)位

r=o,表示正整數(shù)

范\

I=1,表示負(fù)整數(shù)

例如:0.75,原碼表示是:

Wn:-0.75,原碼表示是:

(2)補(bǔ)碼取反加1

-64-

0滋cu-tra空

0=<x<l;

區(qū)撲=

2?|x|=[x]反+"1:"l=<x<0

nu

2-|x|=l.lll....l+2-<?--|x|=l.lll....l-|x|+2-=[x]s+r

從啦到n-l位100000

01001

例如求-0.5625的補(bǔ)碼:

10111

[-0.5625]補(bǔ)打4>01001匚二^10110101”

|-0.5625|[0.5625]氏+1

3.2.4.浮點(diǎn)數(shù)值

3.2.4.1.浮點(diǎn)數(shù)值公式

浮點(diǎn)數(shù)是指小數(shù)點(diǎn)位置可浮動(dòng)的數(shù)據(jù),通常以下式表示:

其一為浮點(diǎn)小幅也鼠尾心——川稱

745標(biāo)準(zhǔn)的

f(fraction)?

-65-

點(diǎn)cu-tra,

3.2.42IEEE754浮點(diǎn)數(shù)值的表示

?0.+

符號(hào)位s=?階碼e采用移碼,尾數(shù)f采用原碼純小數(shù)。

11,-

23.34*10-非規(guī)格化的2334*103規(guī)格化的

11.0111?22非規(guī)格化的110111*23規(guī)格化的

t

隱藏位f

機(jī)器數(shù)與真值的關(guān)系:\y-iy-21:,if

3.243.浮點(diǎn)數(shù)值表示舉例

例一,機(jī)器數(shù)0真值

|o|o|o|o|o|o|o|o|o|o|o|o|o|o|o|o|o|o|

V=(-l)s?2127.]啟(-1)0.21f

V=22?1.11011000000000000000000=111.011000000000000000000

=7.375

例二,真值U>機(jī)器數(shù)

¥=3.125=11.001=1.1001?I1

5=0,e=l+127=128,0010000000000000000000

Olli:o|:|c|o|o|o|i|(0000000c00000

3.2.4.4.IEEE754單精度浮點(diǎn)數(shù)范圍

數(shù)的花圍e=255,f=0s+無窮大

olili“11110c0)00op00c00000

e=0,0:零2皿=2=7=2-127

0000co|o|oc000o|o|o|o|o|o|o00000

e=00000001,f=O:+最小值=2-=6

0000o|i|oc000o|o|o|o|o|o|o|o)00o|o|o|

e=U111110,f=U——11:+:最大值=2=(2-方23)

1

011口111111H111H!H11

02-126

-66-

滋cu-tra空

0邏輯數(shù)值

3.2.5.

1—true,0—false

當(dāng)事物只有二個(gè)狀態(tài)時(shí)可用邏輯值表示!

3.2.6.字符編碼

3.2.6.1.編碼分類

令西文編碼

令中文編碼

3.2.62西文編碼

ASCII(AmericanStandardCodeforInformationInterchange):

規(guī)定8個(gè)二進(jìn)制位的最高一位為0,余下的7位可以給出128個(gè)編碼,表示

128個(gè)不同的字符。

EBCDIC(ExtendedBinaryCodedDecimalInterchangeCode):

擴(kuò)充的二十進(jìn)制交換碼,這種編碼使用8位二進(jìn)制數(shù)??梢越o出256個(gè)編碼,

表示256個(gè)不同的字符。

326.3.漢字編碼

(1)漢字編碼轉(zhuǎn)換

宋體

楷體

隸體

漢字輸入編碼:為了能直接使用西文標(biāo)準(zhǔn)鍵盤把漢字輸入到計(jì)算機(jī)。

漢字內(nèi)碼:漢字內(nèi)碼是用于漢字信息的存儲(chǔ)、交換、檢索等操作的機(jī)內(nèi)代碼。

字模碼是用點(diǎn)陣表示的漢字字形代碼,它是漢字的輸出形式。

(2)國標(biāo)碼說明

-67-

滋cu-tra空

0國標(biāo)碼不等于機(jī)內(nèi)碼!

國標(biāo)碼是我國1981年公布的《通信用漢字字符集(基本集)及

其交換碼標(biāo)準(zhǔn)》GB2312--80方案。

國標(biāo)碼回________0

第二字節(jié)第一字節(jié)

如,“啊”:0011000000010010

機(jī)內(nèi)碼T|1|區(qū)別ASCII

第二字節(jié)第一字節(jié)

如,“啊1011000010010010

(3)漢字字庫

3.2.7.校驗(yàn)碼

3.2.7.1.校驗(yàn)碼說明

計(jì)算機(jī)系統(tǒng)中的數(shù)據(jù),在讀寫、存取和傳送的過程中可能產(chǎn)生錯(cuò)誤。為減少

和避免這類錯(cuò)誤,一方面是精心設(shè)計(jì)各種電路,提高計(jì)算機(jī)硬件的可靠性;另一

方面是在數(shù)據(jù)編碼上找出路,即采用某種編碼法,通過少量的附加電路,使之能

發(fā)現(xiàn)某些錯(cuò)誤,甚至能確定出錯(cuò)位置,進(jìn)而實(shí)現(xiàn)自動(dòng)改錯(cuò)的能力。

數(shù)據(jù)校驗(yàn)碼是一種常用的帶有發(fā)現(xiàn)某些錯(cuò)誤或自動(dòng)改錯(cuò)能力的數(shù)據(jù)編碼方

法。它的實(shí)現(xiàn)原理,是加進(jìn)一些冗余碼,使合法數(shù)據(jù)編碼出現(xiàn)某些錯(cuò)誤時(shí),就成

為非法編碼。這樣,就可以通過檢測(cè)編碼的合法性來達(dá)到發(fā)現(xiàn)錯(cuò)誤的目的。

碼距是根據(jù)任意兩個(gè)合法碼之間至少有兒個(gè)二進(jìn)制位不相同而確定的,僅有

一位不同,稱其碼距為1。

常用的數(shù)據(jù)校驗(yàn)碼主要有奇偶校驗(yàn)碼、海明校驗(yàn)碼和循環(huán)冗余校驗(yàn)碼。

-68-

滋cu-tra空

03.2.7.2.奇偶校驗(yàn)碼

奇偶校驗(yàn)碼是一種開銷最小,能發(fā)現(xiàn)數(shù)據(jù)代碼中一位錯(cuò)情況的編碼,常用于

存儲(chǔ)器讀寫檢查,或ASCII字符傳送過程中的檢查。奇偶校驗(yàn)法的基本思想是通

過在原數(shù)據(jù)信息中增加一位奇校驗(yàn)位(或偶校驗(yàn)位),然后將原數(shù)據(jù)和得到的奇

(偶)校驗(yàn)位一起進(jìn)行存取或傳送,對(duì)存取后或在傳送的目標(biāo)部件得到的相應(yīng)數(shù)

據(jù)和奇(偶)校驗(yàn)位,再進(jìn)行一次編碼,求出新的奇校驗(yàn)位(或偶校驗(yàn)位),最

后根據(jù)得到的這個(gè)新的校驗(yàn)位的值,確定是否發(fā)生了錯(cuò)誤。

奇偶校驗(yàn)碼的實(shí)現(xiàn)原理如下:假設(shè)將數(shù)據(jù)B=bn-1bn-2一.blbO從源部件傳送

至目標(biāo)部件。在終部件接收到的數(shù)據(jù)為bn-2:..b1'b0'。為了判斷數(shù)據(jù)

B在傳送中是否發(fā)生了錯(cuò)誤,可以按照如下步驟,通過最終得到的奇(偶)校驗(yàn)

位P*來判斷是否發(fā)生了數(shù)據(jù)傳送錯(cuò)誤。

第1步:在源部件求出奇(偶)校驗(yàn)位P。

若采用奇校驗(yàn)位,則「=1)11?1)12.?bl?b0?1?

即:若B有奇數(shù)個(gè)1,貝IJP取0,否則,P取1。

若采用偶校驗(yàn)位,則P=brr1?bi2?...?b1?b0?

例如,若傳送的字符碼是:1000001,則增加奇校驗(yàn)位后的編碼為:11000001,

而加上偶校驗(yàn)位后的編碼為:01。00。。1。

第2步:在目標(biāo)部件求出奇(偶)校驗(yàn)位F。

若采用奇校驗(yàn)位,則P'=bn-1'?bn-2'?...?b1'?b0'?1?

若采用偶校驗(yàn)位,則P'=bn-1'?bn-2'?...?b11?b0'(>

第3步:計(jì)算最終的校驗(yàn)位P.,并根據(jù)其值判斷有無奇偶錯(cuò)。

P與B是一起從源部件傳到目標(biāo)部件的,假定P在目標(biāo)部件接受到的值為P”,

則采用異或操作P'=P'?P",對(duì)P'和P”進(jìn)行下列比較,確定有無奇偶錯(cuò):

(1)若P*=1,則表示目標(biāo)部件接受的數(shù)據(jù)有奇數(shù)位錯(cuò)。

(2)若P*=0,則表示目標(biāo)部件接受的數(shù)據(jù)正確或有偶數(shù)個(gè)錯(cuò)。

在奇偶校驗(yàn)碼中,若兩個(gè)數(shù)據(jù)中有奇數(shù)位不同,則它們相應(yīng)的校驗(yàn)位就不同;

若有偶數(shù)位不同,則雖校驗(yàn)位相同,但至少有兩位數(shù)據(jù)位不同。因而任意兩個(gè)碼

字之間至少有兩位不同,所以碼距d=2。因而只能發(fā)現(xiàn)奇數(shù)位出錯(cuò),不能發(fā)現(xiàn)偶

數(shù)位出錯(cuò),而且也不能確定發(fā)生錯(cuò)誤的位置,因而不具有糾錯(cuò)能力。下圖奇偶校

驗(yàn)位的形成及校驗(yàn)。

-69-

0滋cu-tra空

3.2.73海明校驗(yàn)碼

海明校驗(yàn)碼是由RichardHamming于195。年提出的目前還被廣泛使用的一種

數(shù)據(jù)校驗(yàn)碼。它主要用于存儲(chǔ)器中數(shù)據(jù)存取校驗(yàn)。前面所述的奇偶校驗(yàn)碼對(duì)整個(gè)

數(shù)據(jù)編碼生成一位校驗(yàn)位。因此這種校驗(yàn)碼檢錯(cuò)能力差,并且沒有糾錯(cuò)能力。如

果將整個(gè)數(shù)據(jù)按某種規(guī)律分成若干組,對(duì)每組進(jìn)行相應(yīng)的奇偶檢測(cè),就能提供多

位檢錯(cuò)信息,從而對(duì)錯(cuò)誤位置進(jìn)行定位,并將其糾正。海明校驗(yàn)碼實(shí)質(zhì)上就是一

種多重奇偶校驗(yàn)碼。

海明校驗(yàn)碼的處理過程與上面給出的一般過程一樣。最終進(jìn)行比較時(shí),按位

進(jìn)行異或操作,根據(jù)異或操作的結(jié)果,確定是否發(fā)生了差錯(cuò)。這種異或操作所得

到的結(jié)果稱為故障字(syndromeword)。顯然,校驗(yàn)位和故障字的位數(shù)是相同

1.校驗(yàn)位位數(shù)的確定

假設(shè)校驗(yàn)位的個(gè)數(shù)為八則它能表示2r個(gè)信息,用其中的一個(gè)信息指出“沒

有錯(cuò)誤”,其余的2r,1個(gè)信息指出錯(cuò)誤發(fā)生在哪一位。然而錯(cuò)誤也可能發(fā)生在

校驗(yàn)位,因此只有k=2L1-r個(gè)信息能用于糾正被傳送數(shù)據(jù)的位數(shù),也就是說要

滿足關(guān)系:

2r>k+r+1(公式1)

如要能檢測(cè)與自動(dòng)校正一位錯(cuò),并發(fā)現(xiàn)兩位錯(cuò),此時(shí)校驗(yàn)位的位數(shù)r和數(shù)據(jù)

位的位數(shù)k是應(yīng)滿足下述關(guān)系:

2r-1^k+r(公式2)

2.分組方式的確定

-70-

滋cu-tra空

0數(shù)據(jù)位和校驗(yàn)位是一起被存儲(chǔ)的,通過將它們中的各位按某種方式排列為一

個(gè)n+k的碼字,將該字中每一位的出錯(cuò)位置與故障字的數(shù)值建立關(guān)系,這樣就可

通過故障字的值很快確定是該碼字中的哪一位發(fā)生了錯(cuò)誤,并能很容易地將其取

反來糾正。

根據(jù)上述基本思想,我們按以下規(guī)則來解釋各故障字的值。

(1)如果故障字各位全部是0,則表示沒有發(fā)生錯(cuò)誤。

(2)如果故障字中有且僅有一位為1,則表示校驗(yàn)位中有一位出錯(cuò),不需

要糾正。

(3)如果故障字中多位為1,則表示有一個(gè)數(shù)據(jù)位出錯(cuò),其在碼字中的出

錯(cuò)位置由故障字的數(shù)值來確定。糾正時(shí)只要將出錯(cuò)位取反即可。

為了介紹海明校驗(yàn)碼的原理,以8位數(shù)據(jù)進(jìn)行檢測(cè)與自動(dòng)校正一位錯(cuò)的代碼

為例說明。假定一個(gè)8位數(shù)據(jù)M=D8D7D6D5D4D3D2D1,K=8,根據(jù)公式1可以計(jì)算

出r=4,8位數(shù)據(jù)需要4位校驗(yàn)位,其相應(yīng)的4位校驗(yàn)位為P=P4P3P2P1,所以可

知海明碼共12位(k+r)1,

假若海明碼表示為H2H1,其最高位號(hào)為m,最低位號(hào)為1,則此

海明碼的編碼規(guī)律通常是:

(1)校驗(yàn)位與數(shù)據(jù)位之和為m,每個(gè)校驗(yàn)位Pi在海明碼中被分在位號(hào)2i-1位

置,其余各位為數(shù)據(jù)位,并按從低向高逐位依次排列的關(guān)系分配各數(shù)據(jù)位一。

(2)海明碼的每一位碼Hi(包括數(shù)據(jù)位和校驗(yàn)位本身)由多個(gè)校驗(yàn)位校驗(yàn),其

關(guān)系是被校驗(yàn)的每一位位號(hào)要等于校驗(yàn)它的各校驗(yàn)位的位號(hào)之和。這樣安排的目

的,是希望校驗(yàn)的結(jié)果能正確反映出出錯(cuò)位的位號(hào)。

按上述規(guī)律8個(gè)二進(jìn)制數(shù)據(jù)位的海明碼可表示為:

H12H11...H3H2H1

4個(gè)校驗(yàn)位P4?P1對(duì)應(yīng)的海明碼位號(hào)應(yīng)分別為H8,H4,H2和H1,滿足Pi的

位號(hào)等于2L1的關(guān)系。其余為數(shù)據(jù)位Di,則H12?HI有如下排列關(guān)系:

D8D7D6D5P4D4D3D2P3D1P2P1

按照前面敘述的規(guī)則解釋上述編碼,將數(shù)據(jù)D和校驗(yàn)位P按照一定的規(guī)律排到

一個(gè)12位的碼字中。根據(jù)上述第一個(gè)規(guī)則,故障字為0。。0時(shí),表示無錯(cuò),因此

沒有和位置號(hào)000。對(duì)應(yīng)的出錯(cuò)情況,所以位置號(hào)從0001開始。根據(jù)第二個(gè)規(guī)則,

故障字中有且僅有一位為1時(shí),表示校驗(yàn)位中有一位出錯(cuò),此時(shí),故障字只可能

-71-

滋cu-tra空

0是0001、0010、0100>1000四種情況,將這四種狀態(tài)分別代表校驗(yàn)位中第P1、

P2、P3、P4位發(fā)生錯(cuò)誤的情況,因此,校驗(yàn)位PI、P2、P3、P4應(yīng)分別位于碼字

的第00。1、0010、0100.1000位。根據(jù)最后一個(gè)規(guī)則,將其他多位為1的故障

字依次表示數(shù)據(jù)位D1?D8發(fā)生錯(cuò)誤的情況。因此,數(shù)據(jù)位D1?D88應(yīng)分別位于碼

字的第0011、010k0110,0111、1001、1010、1011、1100位。

3.校驗(yàn)位的生成和檢錯(cuò)、糾錯(cuò)

分組完成后,就可對(duì)每組采用相應(yīng)的奇(偶)校驗(yàn),以得到相應(yīng)的一個(gè)校驗(yàn)

位。如P1參與對(duì)數(shù)據(jù)位DI,D據(jù)D4,D5和D7的校驗(yàn),P4參與對(duì)D5D6D7和D8的

校驗(yàn)等等。假定采用偶校驗(yàn)(即取校驗(yàn)位Pi,使對(duì)應(yīng)組中有偶數(shù)個(gè)1),則得到

校驗(yàn)位與數(shù)據(jù)位之間存在如下關(guān)系:

P1=01?D2?D4?D5?D7(3.1)

P2=DI?D3?D4?D6?D7(3.2)

P3=D2?D3?D4?D8(3.3)

P4=D5?D6?D7?D8(3.4)

注意:如果要分清是兩位出錯(cuò)還是一位出錯(cuò),還要補(bǔ)充一個(gè)P5總校驗(yàn)位,

使

P5=D8十D7十D6十D5十D4十D3aD2十D1十P5十P4十P3十P2十P1

在上面式子中,每一位數(shù)據(jù)位都至少出現(xiàn)在3個(gè)Pi值的形成關(guān)系中。當(dāng)任一

位數(shù)據(jù)碼發(fā)生變化時(shí),必將引起3個(gè)或4個(gè)Pi值跟著變化。

假如故障字S=S4S3s2S1,根據(jù)S的值可以確定是沒有發(fā)生錯(cuò)誤,還是僅校驗(yàn)

位發(fā)生錯(cuò)誤,還是哪一個(gè)數(shù)據(jù)位發(fā)生了錯(cuò)誤。結(jié)合式子(3.1)?(3.4)可得到故障

字和海明碼偶校驗(yàn)關(guān)系如下:

S1=PI?DI?D2?D4?D5?D7(3.5)

S2=P2?DI?D3?D4?D6?D7(3.6)

S3=P3?D2?D3?D4?D8(3.7)

S4=P4?D5?D6?D7?D8(3.8)

S5=P5?P4?P3?P2?P1?D8?D7?D6?D5?D4?D3?D2?D1(3.9)

則校驗(yàn)得到的結(jié)果值S4?$1能反映12位海明碼的出錯(cuò)情況。

注意:如果要發(fā)現(xiàn)兩位出錯(cuò)必須使用$5=P5?P4?P3?P2?P1?D8?D7?D6

?D5?D4?D3?D2?D1公式計(jì)算出S5,任何偶數(shù)個(gè)數(shù)出錯(cuò),S5一定為0,因此

-72-

滋cu-tra空

0可區(qū)分兩位出錯(cuò)或一位出錯(cuò)。

下圖是H=12,數(shù)據(jù)位k=8,校驗(yàn)位r=4的海明校驗(yàn)線路,記作(12,8)分組

碼。

3.2.74循環(huán)冗余校驗(yàn)(CRC)碼

循環(huán)冗余校驗(yàn)碼(CyclicRedundancyCheck),簡稱CRC碼,是一種具有很

強(qiáng)檢錯(cuò)、糾錯(cuò)能力的校驗(yàn)碼。循環(huán)冗余校驗(yàn)碼常用于外存儲(chǔ)器的數(shù)據(jù)校驗(yàn),在計(jì)

算機(jī)通信中,也被廣泛采用。在數(shù)據(jù)傳輸中奇偶校驗(yàn)碼是在每個(gè)字符信息后增加

一位奇偶校驗(yàn)位來進(jìn)行數(shù)據(jù)校驗(yàn)的,這樣對(duì)大批量傳輸數(shù)據(jù)進(jìn)行校驗(yàn)時(shí),會(huì)增加

大量的額外開銷,尤其是在網(wǎng)絡(luò)通信中,傳輸?shù)臄?shù)據(jù)信息都是二進(jìn)制比特流,因

而沒有必要將數(shù)據(jù)再分解成一個(gè)個(gè)字符,這樣也就無法采用奇偶校驗(yàn)碼,因此,

通常采用CRC碼進(jìn)行校驗(yàn)。

CRC碼可以發(fā)現(xiàn)并糾正信息存儲(chǔ)或傳送過程中連續(xù)出現(xiàn)的多位錯(cuò)誤,其實(shí)現(xiàn)

方法主:要是在k位信息碼之后拼接r位校驗(yàn)碼。應(yīng)用CRC碼的關(guān)鍵是如何從k位信

息位簡便地得到r位校驗(yàn)位(編碼),以及如何從k+r位信息碼判斷是否出錯(cuò)。

CRC碼的編碼方法是在糾錯(cuò)編碼代數(shù)中,把以二進(jìn)制數(shù)字表示的一個(gè)數(shù)據(jù)系

列看成一個(gè)多項(xiàng)式。例如,可將待編碼的k位有效信息位組表達(dá)為多項(xiàng)式M(x):

M(x)=Ck-1Xk-1+Ck-2Xk-2+...+CiXi+...+C1X+C0

式中Ci為0或1。

若將信息位組左移r位,則可表示為多項(xiàng)式M(x),Xr。這樣就可以空出r位,

以便拼接r位校驗(yàn)位,即:n=(k+r)位,如下圖所示。

-73-

信息位組

k^Z+i?位

設(shè)所得余數(shù)表達(dá)為R(x),商為Q(x)。將余數(shù)拼接在信息位組左移r位空出的r

位上,就構(gòu)成這個(gè)有效信息的CRC碼。這個(gè)CRC碼可用多項(xiàng)式表達(dá)為:

M(x)-Xr+R(x)=[Q(x)■G(x)+R(x)|+R(x)

=[Q(x)-G(x)]+[R(x)+R(x)]

=Q(x)'G(x)

因此所得CRC碼可被G(x)表示的數(shù)碼除盡。

3.3.指令系統(tǒng)

3.3.1.指令系統(tǒng)概述

33.1.1.指令描述

指令是指揮計(jì)算機(jī)CPU執(zhí)行某種操作的命令。按組成計(jì)算機(jī)的層次結(jié)構(gòu)來劃

分,計(jì)算機(jī)的指令有微指令、機(jī)器指令和宏指令等。

微指令是微程序級(jí)的命令,屬于硬件;

宏指令是由若干條機(jī)器指令組成的軟件指令,屬于軟件;

機(jī)器指令則介于微指令與宏指令之間,通常簡稱為指令,每一條指令可完

成一個(gè)獨(dú)立的算術(shù)運(yùn)算或邏輯運(yùn)算操作。

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論