Z=f(x), където x- входни данни; z



страница1/5
Дата23.03.2017
Размер0.81 Mb.
#17599
  1   2   3   4   5
Тема 1

Компютрите имат следното най-общо устройство:



В организация на компютърното изчисление съществува абстрактен модел на изчисленията z=f(x), където



x- входни данни; z- търсен резултат;f- функция за продуциране на резултата; x,y- числа, символи, образи, файлове; f- числови, символни изчисления, доказателства(f1(f2(...(x))); Изчислява се последователността от по-прости действия. Ефективността на компютърното изчисление може да се обясни най-добре чрез основните характеристики на КИ. А те са:

а) необходимо пространство (памет)- пропорционално на броя на данните (n) на задачата.

б) бързодействие- абсолютно време за изпълнение на програмата. Зависи от обработените конкретни данни. Измерването на абсолютното време е трудно. Има инструкции които са по-прости- заемат 1,2 такта , а други 2000, 4000 процесорни такта. Съществуват специални среди за хронометриране на времето и увеличаване на бързодействието.

Ефективността на КИ е относителното нарастване на броя на обработените данни при Р-кратно повишаване на производителността на КС и NP- сложност на алгоритмите

Основните функции на организация на компютрите са:

-обработка на данни(Processing);

-съхранение(Storage);

-обмен на данни(Movement);

-управление(Control);

Основни функции на CPU: обработка и управление на данните;

Основни характеристики на КС:

*производителност, измерва се в инструкции за секунда;

*списък на инструкциите - RISK или CISK, Reduced / Complex Instruction Set

*дължина, разрядност на машинната дума

*брой на регистрите

*капацитет на кеша

*капацитет на основната памет

*капацитет на външната(вторична) памет

*виртуално адресно пространство

*входно/изходни устройства

*операционна система

*ниво на мултипрограмиране

*цена
Тема 2не 2 в. от конспекта 2004/2005 г.

Основните функции на процесорите са обработка на данни, управление чрез изчисления на машинни инструкции.



Central processing unit (CPU)

При липса на кеш памет процесора многократно се обръща към паметта Това е сравнително бавно тъй като тя може да е заета. Могат да се поставят няколко кеша с цел повишаване скоростта на обработка.

Има 3 начина за реализация на микро програма;

- хардуерен- програмата се реализира във вид на схеми;

- софтуерен- микропрограмите се записват в RAM;

- фърнуерен- (процесори без вградени инструкции);


Алгоритъмът за описание на микропрограми е следния:

type word.......;

address....;

mem=array[o..4085] of word;

Procedure .....;

Var .....

begin

.

.



begin

(1- четене на инструкция)

(2- формиране на следващ адрес за инструкция)

(3-дефиниране на текущата инструкция и типа)

(4- формиране на адрес на операнд)

(5- четене на операнд (при необходимост))

(6- изпълнение на операцията)

end;


end;
При поколенията КС е важна е наследствеността. Основните характеристики са:

- Производителност (инструкции за секунда)- измервателна единица Ip/s, FLOP/s- брои инструкции с плаваща запетая за секунда (бързината се различава с три порядъка).

- Списък от инструкции (Complex Instruction Set Computer).

- Дължина (разреденост) на машинната дума.

- Брои на регистрите (локална памет).

- Капацитет на основната единична памет (единична).

- Капацитет на външната двоична памет (вторична).

- Виртуално адресно пространство.

- Входно/изходни периферни и комуникационни у-ва .

- Операционна система (среда).

- Ниво на мултипрограмиране.

- Цена и др.

Поколенията КС произлизат едно от друго като всяко следващо се опира на устройството на предното:

1 поколение;



2 поколение;



3 поколение;



Развитието на интегралните технологии за КС може да се представи чрез следната крива:

Базова класификация на КС може да се направи по различни признаци присъщи на компютрите:

а) по предназначение

- Обработка на данни (Data processing);

- управление - времето за получаване на модул е критично (Real time Processing);

б) по възможности:

- универсални;

- специализирани;

в) по организация:

- еднопрограмни ;

- мултипрогрсмни ;

г) по структура:

- фиксирана;

- реконфигуруема;

д) по производителност:

- супер компютри;

- големи КС (main frame);

- мини КС;

- микро КС;


ТЕМА 3.

Форматите и подреждането на записите в паметта най-общо може да се представи в следната таблица:






бит

байтове

синоним

bit

1b







nibble

4b

halfbyte

тетрада

byte

8b

1B

halfword

word

16b

2B




doubleword

32b

4B




quadreword

64b

8B




tenbyte

80b

10B




Целочислените адресни граници на записите са адрес в паметта, двоичната стойност, на който е четна по отношение на дължината на записа спрямо широчината на паметта.

При подреждането на записите в паметта имаме низходящо и възходящо подреждане. Низходящо разполагане (Big Endian) - по увеличаващи се адреси в паметта на низходящи по старшинство записи (от MSB към LSB, най-малък адрес съдържа MSB). Big Endian се използва при Morotola. Разполагане по нарастване на адреси(Little Endian) в паметта на възходящи по старшинство записи (от LSB към MSB. Най-малък адрес съдържа LSB). Little Endian се използва при Intel.

Least Significaut Byte/bit (младши байт/бит).

Most Significaut Byte/bit (старши байт/бит).

На използваните бройни системи може да се направи основна класификация за цифрова обработка :

а) позиционни (ПБС):

- натурална;

- с отрицателна основа;

- знакоразрядна;

- с комплексна основа;

- с логаритмична основа;

- смесена;

- двоично-десетична;

б) непозиционни (НПБС) - с остатъчни класове;

Представянето на ПБСН се извършва във вид на полиномкъдето a - цифри (цели,положителни, р на брой); m+n: разрядност (n- дробно, +m- цели) за i=(-n) ...+m, p - основа (цяла положителна).

Пример: 13710=1.102+3.101+7.100

Примери:

Обръщане от двоична БС в десетична:

двоично - 11012

десетично - 1.23+1.22+0.21+1.20=1310

Двоично сумиране: 0+0=0; 0+1=1; 1+0=1; 1+1=10;

0001+0011= 0100;

За превръщане на числата например Np=>Nq се използват следните методи:

- p<>10, q=10 - чрез пресмятане на полиномната форма на число в десетична БС.

- p=10, q<>10 цяло число - чрез последователно деление на Np с q, при което остатъците формират в обратна последователност Nq.

- p=10, q<>10 дробно число - чрез последователно умножение (ограничен брой пъти) на Np с q, при което целите числа формират Nq.

- p=10, q<>10 реално число - по отделно превръщане на цялата и дробната част.

- p=q.t - чрез поразредно заместване (кодиране) на всеки разред от Np с t разреди на Nq.

Пример: 12310=>?2

123:2=61:2=30:2=15:2=7:2=3:2=1:2=0

1 1 0 1 1 1 1

Остатъци:

1111011(2)

Новополученото число се получава като запишем остатъците в обратен ред.

0,45210=?2 с точност в разряда

0,452.2=0,904.2=1,808.2=1,616.2=1,232.2=0,464.2=0,968

0,0111002

Машинните кодове имат различни видове:

- обикновени(еднознаков разред:+, 0, /, -, 1)

- модифицирани (двузнаков разред: +:00/-:11)

Кодообразуващите правила (обикновени кодове) са:

- 0N, при N>=0 1N при N<0 -пряк;

- 0N, при N>0 1N при N<0 -обратен;

- 0N, при N>=0 1Nn при N<0 -допълнителен;

N=a1a2a3...an n - разредно число;

N1=a1a2a3...an a1-допълнение на а1 до р-1;

Nn=a1a2a3...an a1- допълнение на а1 до р;

Обработката (алгебрично сумиране, допълнителен код) се извършва като от кодиране на операнда, при аритметично сумиране, n - декодиране на резултата. Начините са следните:

*фиксирана запетая: ,

i=(-n)...+m, ако се извади в ляво цялата част

, i=1...n+m, където a-ip-i - мантиса със знак; m - порядък, със знак, нормализирана мантиса: когато старшият разряд е различен от нула

Характеристика: порядък + отместване, без знак

Пр. (в пряк код)

фиксирана 2В формат

0:msb...15:Isb

Integer


0 000 0000 0000 1100 +11002=+1210

1 000 0000 0001 0110 - 101002=-2010

плаваща 0-10: мантиса...11-15=порядък

в - нормализация

0 101 0000 0000 0110 +0,101.2+110=+101000,02=+4010

- фиксирана

минимална аритметична стойност 0,000...1=2

максимална аритметична стойност 0,111...1=1-2к

к- брой разреди;

- плаваща

минимална аритметична с-ст 0,100...0.2

максимална аритметична с-ст 0,111...1.2

р- максимален порядък;

Примерни формати с плаваща запетая в Intel x86 (стандарт IEEE 754)

*REAL4 – единична точност, формат DW =4bytes, скрит бит=1

*REAL8 – двойна точност, формат QW=8bytes, скрит бит=1

*REAL10 – разширена точност, формат TB, скрит бит=1

REAL4 организация:



31

30 23

22 0



характеристика

мантиса


ТЕМА 4. ПСБ знакоразредна

Всяко рационално число, представено в ПБСЗ, може да се даде във вида



където р>2 е основата на ПБСЗ, а цифрите са:



(Xi)=0; 1; 2;…Xim;

Представянето на числата в ПБСЗ е еднозначно, а неговият знак отговаря на знака на старшата значеща цифра. При нулева стойност на числото всички разреди са 0. При промяна на знака на числото всички знаци на значещите цифри (Хi) се променят на обратните.

Обхвата на представимите числа с фиксирана запетая чрез ПБСЗ е:

, k - брой разреди на цялата част на числото, n - общ брой разреди на числото.
За превръщане на числата от ПБСН в ПБСЗ и обратно се използват следните основни методи:

- NPПБСН - в знакоразредно Np, произволно число - превръщането се изпълнява чрез поразредно формиране на цифрите (Хi) на търсеното число:




- Знакоразредно Np във NPПБСН, произволно число - превръщането се изпълнява чрез пресмятане на числото от ПБСЗ съгласно формулата за представяне на числата в избраната ПБСН.

Сумирането на числата се изпълнява поразредно, като за всеки I разред се определят сумата (Si), междинната сума (i) и преносът (Ci). Изваждането се изпълнява като сумирането но с обратен знак, като се променят всички знаци на цифрите на умалителя. Умножението се изпълнява със сумиране на частичните произведения, а делението е усложнено значително поради нееднородността на разредите на частното. Основното предимство на обработването на числата, представени в ПБСЗ, е независимостта на формирането на преноса Ci от младшият пренос Ci-1.

1. Сумиране - Изпълнява се поразредно

,

пренос (най-близко минимално цяло).



, междинна сума.

, сума в “I” разред.

2. Изваждане - чрез сумиране на число с обратен ред.

3. Умножение (деление) - подобно на ПБСН.

Примери:


Сумиране

1

3

-5,

6

-4

операнд а

2

-6

-4

3

6

операнд b

0

-1

1

0




преноси Ci

3

-3

1

-1

2

междинна  на i

3

-4

2,

-1

2

резултат

Сумирането се използва по разреди. Може едновременно всички разреди да се обработват.
Умножение:

0,

-2

0

4

1

-1,

-3

6

1

0

Частични произведения и резултат.













-2

0

4

1







-1

-2

2

4

6










6

-1

-2

-3










2

0

-4

-1










0,

2

5

-7

-3

2

0

1

Тема 5. ПСБ с остатъчни класове

Основен запис на числото:

N[pi]=(d1d2...dS) di=rest N mod pi

di цифри на НПБСОК ( остатък на числото на съответната основа). Обхват на еднозначно представимите числа




Методи за превръщане на числата

1. Np=>N[pi] - чрез формиране на остатъци.

2. N{pi}=Np - чрез възстановяване на остатъчни схеми (броячи със съответен модул на броене каквито са системите).

Пример:


N10

2

3

5

0

0

0

0

1

1

1

1

2

0

2

2

3

1

0

3

...

...

...

...

9

1

0

4

10

0

1

0

11

1

2

1

...

...

...

...

28

0

1

3

29

1

2

4

Превръщането и сумирането се извършва по ускорения паралелен метод (Разред по разред всички заедно).

Методи за изпълнение на аритметични операции в НПБСОК.

A{pi}=(12...S) Операнд 1

B{pi}=(12...S) Операнд 2

D{pi}=(12...S) Резултат

1. Сумиране - изпълнява се поразредно.

i=iipi за А,B,Di}max.

2. Умножение - изпълнява се поразредно.

i=iipi за А,B,Di}max.

Пример:


Сумиране

N10

3

5

7

38

2

3

3

63

0

3

0

101

2

1

3

Тази схема проверява верността на резулта­та получен от АЛУ (контролна станция).

Умножение:



N10

3

5

7

11

18

0

3

4

7

49

1

4

0

5

882

0

2

0

2



Въпрос 6. ПСБ смесени

Общият вид на N разредно число в ПБСС (смесени) с основа R при използване на запис на нейните цифри на ПБСН с основа r е:



където J са цифри на ПБСН с основа r, l - броят на разредите от ПБСН с основа r необходими за записване на R стойности. ПБСС са получили практическо приложение във връзка с представянето на цифрите от десетичната ПБСН с двоични (т.нар. двоично-десетични кодове), което позволява непосредствено изпълнение на аритметични операции над десетични числа в процесорите. Всяко N разредно число от ПБСН с основа R=10 и к

Като при Kj се получава точно представяне на числата или двоично десетичен код (BCD).

За превръщане на числата от ПБСДД в ПБСН и обратно се използват следните методи:

- N10 в NДД, произволно число- извършва се чрез непосредствено поразредно кодиране на десетичните цифри на изходното число N10 са тетради от избраният двоични десетичен код.

- NДД в N10 , произволно число - аналогично на горното като се използва обратното преобразуване на тетрадите.

- NДД в N2, произволно число (код Д1) - чрез представяне във вида : N10=a1.a2…an, където с ai са означени тетрадите от двоично десетичният код Д1.

- N2 в NДД,, произволно число (код Д1) - използват се описаните по-горе методи като новата основа е двоичното число 1010 (=10d).

Сумирането изисква допълнителна корекция на резултата. При сумиране в код Д1 и получаване на тетрада - сума  1010 и наличие на десетичен пренос допълнително се прибавя корекция - тетрада 0110, като преноса се разпространява между тетрадите.

Умножението се състои в последователно сумиране на частичните произведения, получени при умножаване на множимото с поредната цифра на множителя. Делението се изпълнява чрез последователно изваждане на делителя от делимото, до получаване на отрицателен остатък.

а) видове аритметика

- двоична (d)=>(BCD)=>(b)=>(двоична обработка)=>(b)=>(BCD)=>(d);

- десетична (d)=.(BCD)=>(десетична обработка) =>(BCD)=>(d);

б) Кодообразуващо правило

0d=>0000b

1d=>0001b

2d=>0010b

3d=>0011b

:

9d=>1001b



в) Сумиране (код BCD) - многоразредно двоично, с корекция при десетичен (междутетраден) пренос или неправилна кодова тетрада (чрез прибавяне на 6d=>0110b)

37d=> 0011 0111

+26d=> +0010 0110

0101 1101



0110

0110 0011 =>63d

г) разполагане на записи в паметта:

1) неопаковано (1d BCD цифра в 1b)

2) опаковано (2d BCD цифри в 1b)

За представяне на символна информация се прилагат двоични кодове, които са стандартизирани от международните организации. Съвкупността от всички символи образуващи информацията е т. нар. кодовата азбука. Символите са два вида служебни и графични. Служебните символи служат за управление на информацията върху входно изходните устройства, за управление на допълнителни устройства и за обработване на информацията. Графичните символи са букви (кирилица и латиница - малки и големи), цифри и знаци.

Стандартните кодове за представяне на данни в компютрите са:

UNICODE:

Дължина 16b, 216=65536 кодови комбинации (специални символи, азбуки). Намира приложение в UNIX ориентирани платформи и в последно време WINDOWS 9x и NT.



EBCDIC:

Дължина 8b, 28=256 кодови комбинации (специални символи, азбуки). Приложение - вътрешен код в main frame компютри IBM (IBM360-370). Тук старшите два бита дефинират кодова зона съответно :

00- за служебни символи;

01 - за графични символи;

10 - за малки букви;

11 - за големи букви и цифри;



ASCII:

Съществуват няколко разновидности. ASCII-8 e с дължина 8b -28=256 кодови комбинации (специални символи, азбуки). В този код може да се включи и кирилица. ASCII-7 е с дължина 7 бита и включва 128 комбинации. Има и други 8 битови ASCII кодове които се различават само във втората си половина. ASCII намира приложение в микро и мини компютри изградени на базата на PC-IBM AT съвместими. Особеност в кода е че символа с код 0 не се използва.



Въпрос 7. Кодове за откриване и коригиране на грешки

1. Общи понятия. Дефиниция, класификация:

X={x1,x2,...,xn} xi - двоични разреди; n - общ брой разреди (n=к+r), к- брой “информацио­нни” разреди, r - брой “контролни” разреди.Кодовете най-общо се делят на:

- защитени ( r != 0 ) / незащитени кодове ( r = 0 );

- равномерни/неравномерни;

- разделими/неразделими - ако за {x} броя и позиция на контролните разреди е еднаква/различна.

Метрика в кодовото пространство (по Hamming).

min(X’,X’’)=(aibi)min, където i=1..n.

- min=1- незащитени кодове.

- min2 - защитени кодове (кодове с излишък).

- min=s+1 - защитени кодове с откриване на s-кратна грешка.

- min=2s+1 - защитени кодове с коригирана на s-кратна грешка.



Защитени кодове с откриване на s=1 грешки.

-кодове с четност/нечетност



keven={,a1,a2,...,an-1} -четност

kodd={p,a1,a2,...,an-1} -нечет

min=2 откриват всички еднократни (нечетни) грешки. Пример:



незащитен код

код с четност

код с нечетност

(1000 0101)

(1 1000 0101)

(0 1000 0101)

(1000 0001)

(0 1000 0001)

(1 1000 0001)

(1001 1101)

(1 1001 1101)

(0 1001 1101)

- кодове с остатък

к’={a1,a2,...,ak, } разделим.

к’’={} неразделим код.

При m=p+1=3 (min=2) кодовете скриват всички единични (нечетнократни) грешки.



Методи за проверка:

- за к’ - аналогично на кодовете по четност/нечетност;

- за к’’ винаги сумата по mod2(m) e=0;

Пример:


незащитен код

разделим код

неразделим код

(10010)

(10010 00)

(110110)


Защитени кодове с откриване на групови s>1 грешки (полиномни кодове): съобщение с дължина m бита се представя като степенен полином P(x) от n-1 степен спрямо фиктивна променлива х. Дадено е съобщението (1101 0011) m=8 => P(x)=x7+x6+x4+x1+1 - степенен полином

Формиране на разделим полиномен код F(x) - съобщението P(x) се умножава с xk (к – брой на битовете на CRC), след което към него се прибавя остатък от делението му с пораждащия полином G(x) от степен k’. Така получения F(x) се дели на G(x) цяло число пъти. От което следва xkP(x)=Q(x)G(x)+R(x) или Q(x)G(x)=F(x)= xkP(x)+R(x), сумирането на коефициенти е по mod2 (изваждането е еднакво със сумирането).



Стандартни схеми за деление на полином с изместващи регистри

CRCC 16 G(x)=x16+x15+x2+1



2b

13b

1b

MKKTT G(x)=x16+x12+x5+1

5b

7b

4b

LRCC 16 G(x)=x16+1



16b

- кодиране - след ‘m’ такта на преминаване на P(x) в регистрите остава R(x), който за следващите ‘к’ такта се предава образувайки F(x).

- декодиране - след ‘m+k’ такта на преминаване на F(x) преместващите регистри приемат 0 при липса на грешка.



Саморегистриращ се код на Hamming - сам коригира грешките и автоматично ще се възстанови правилната стойност.

Общ вид: KH={n1...l8x7x6x5l4x3l2l1}- разделим код за откриване на единични грешки min=3

При 8 информационни бита, битовете за проверка са 4 на брой, позициите им са степените на двойката – 1, 2, 4, 8, а останалите позиции(3,5,6,7,9,10,11,12) са за информационните битове. Информационните битове се образуват така: i1=i3i5i7i9i11; i2=i3i6i7i10i11; i4=i5i6i7i12; i8=i9i10i11i12;

Ето как се извършва корекцията на грешки: Нека защитеният код е 101001011000, и нека грешен е най-старшият 12 бит, т.е. числото с грешка е 001001011000. В полученото число гледаме кои битове са “1” – битове 4, 5, 7 и 10. Разглеждаме ги като двоични числа и ги сумираме по модул 2, т.е. 0100010101111010 = 1100b.

1100 двоично е 12 десетично => грешният бит е 12 и го инвертираме. Ако сумата по модул 2 е 0 => нямаме грешки и директно вземаме информационните битове.


Каталог: files -> tu files
tu files -> Увод в компютърната графика
tu files -> Xii. Защита и безопасност на ос
tu files -> Електрически апарати
tu files -> Средства за описание на синтаксиса
tu files -> Stratofortress
tu files -> Начало Решаване на проблеми
tu files -> Писане на скриптове за bash шел : версия 2
tu files -> 6Технологии на компютърната графика 1Модели на изображението
tu files -> Body name библиотека global Matrix imports (достъп по име) … var m[N, N] := … end decl., proc … resource f final code imports node, Matrix end name var x: node node; if x … Matrix m[3,4] :=: … end


Сподели с приятели:
  1   2   3   4   5




©obuch.info 2024
отнасят до администрацията

    Начална страница