MIME-Version: 1.0 Content-Location: file:///C:/268644F4/inf4.htm Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset="us-ascii" PREDST

Предстаk= 4;ление чисел в компьютере

= 063;исловые данные обрабатываn= 2;тся в компьютер = 77; в двоичной системе счисления. Числа храня = 90;ся в оперативноl= 1; памяти в вид= 077; последоватk= 7;льностей нулей и единиц, т.е. в двоичном коде.

Предста&#= 1074;ление чисел в формате с фиксированl= 5;ой запятой. Целые числа = 074; компьютере хранятся в памяти в формате с фиксированl= 5;ой запятой. В этом случае каждому разряду ячейки памя = 90;и соответствm= 1;ет всегда один = 080; тот же разря= 076; числа, а запятая находится справа посл = 77; младшего разряда, т.е. вне разрядной сетки.

Для хранения це&= #1083;ых неотрицатеl= 3;ьных чисел отводится одна ячейка памяти (8 бит). Например, число A2 =3D 101010102  будет= хранится в ячейке памяти следующим образом:

1

0

1

0

1

0

1

0

Максимаl= 3;ьное значение целого неотрицатеl= 3;ьного числа достигаетсn= 3; в случае, когда во все= 093; ячейках хранятся единицы. Для n-раk= 9;рядного представлеl= 5;ия оно будет равно:

2n - 1

Пример. Определить диапазон чисел, которые могут хрk= 2;нится в оперативноl= 1; памяти в формате цел&= #1086;е неотрицатеl= 3;ьное число.

Минималn= 0;ное число соответствm= 1;ет восьми нуля = 84;, хранящимся = 74; восьми ячейках пам = 03;ти, и равно нулю.

Максимаl= 3;ьное число соответствm= 1;ет восьми единицам, хранящимся = 74; ячейках памяти и рав= 085;о:

A =3D 1E27 +1E26 +1E25 + 1E24 + 1E23 + 1E22 + 1E21 + 1E20 =3D 1E28 – 1 =3D= 25510

Диапазон изменения &= #1094;елых неотрицатеl= 3;ьных чисел чисел от 0 до 255.

Для хранения це&= #1083;ых чисел со знаком отводится две ячейки памяти (16 бит), причем стар = 96;ий (левый) р= 072;зряд отводится под знак числа (если число положительl= 5;ое, то в знаковы= 081; разряд запи = 89;ывается 0, если число отрицательl= 5;ое записываетl= 9;я 1).

Предстаk= 4;ление в компьютер = 77; положительl= 5;ых чисел с использоваl= 5;ием формата «знак-велич = 80;на» называется &= #1087;рямым кодом числа. Например, число 200210 =3D 111110100102= будет представлеl= 5;о в 16-ти разрядном представлеl= 5;ии следующим образом:

0

0

0

0

0

1

1

1

1

1

0

1

0

0

1

0

= 055;ри представлеl= 5;ии целых чисел = 074; n-ра= ;зрядном представлеl= 5;ии со знаком максимальнl= 6;е положительl= 5;ое число (с учетом выде = 83;ения одного разряда на знак) равно:

A =3D 2n-1= - 1

Пример. Определить = 84;аксимально&#= 1077; положительl= 5;ое число, котор= 086;е может хрk= 2;нится в оперативноl= 1; памяти в формате цел&= #1086;е  число со знаком.

A10 =3D 215 = – 1 =3D 3276710

Для представлеl= 5;ия отрицательl= 5;ых чисел испол = 00;зуется дополнител&#= 1100;ный код. Дополнителn= 0;ный код позволяет заменить ар = 80;фметическу&#= 1102; операцию вычитания операцией сложения, чт= 086; существеннl= 6; упрощает работу проц = 77;ссора и увеличиваеm= 0; его быстродейсm= 0;вие.

Дополни= 090;ельный код отрицатель= 085;ого числа A, хранящегос= 103; в n<= /i> ячейках, равен 2n - |A|.

Дополниm= 0;ельный код представляk= 7;т собой допол = 85;ение модуля отрицательl= 5;ого числа А до 0, поэтому в= n-раk= 9;рядной компьютернl= 6;й арифметике:

2n - |A| + |A| ≡ 0

Это равенство тождественl= 5;о справедливl= 6;, т.к. в компьютернl= 6;й n-ра= ;зрядной арифметике 2n ≡ 0. Действителn= 0;но, двоичная запись такого числ = 72; состоит из о= 076;ной единицы и n нулей, а в n-разр = 03;дную ячейку може = 90; уместиться только n младших разрядов, т.е. = n нулей.

Пример. Записать дополнителn= 0;ный код отрицательl= 5;ого числа –2002 для 16-ти разрядного компьютернl= 6;го представлеl= 5;ия.

= 055;роведем вычисления = 74; соответствl= 0;и с определениk= 7;м дополнителn= 0;ного кода:

216

=3D

10000000000= 0000002

655361= 0

200210=

=3D

00000111110= 100102

200210=

216 - |200210|

=3D

11111000001= 011102

635341= 0

= 055;роведем проверку с использоваl= 5;ием десятичной системы счисления. Д= 086;полнительн&= #1099;й код 6353410 в сумме с модулем отрицательl= 5;ого числа 200210  раве= н 6553610, т.е. дополнителn= 0;ный код дополняет модуль отри = 94;ательного числа до 216 (до нуля 16-ти разрядной компьютернl= 6;й арифметики).

= 044;ля получения дополнителn= 0;ного кода отрица = 90;ельного числа можно использоваm= 0;ь довольно простой алгоритм:

1.    &nb= sp;  Модуль числа записать пр&= #1103;мым кодом в n двоичных разрядах;

2.    &nb= sp;  Получит = 00; обратный код числа, для этого значения всех бит инвертировk= 2;ть (все единицы заменить на нули и все нули заменить на единицы);

3.    &nb= sp;  К полученномm= 1; обратному коду прибавить единицу.

Пример. Записать дополнителn= 0;ный код отрицательl= 5;ого числа –2002 для 16-ти разрядного компьютернl= 6;го представлеl= 5;ия с использоваl= 5;ием алгоритма.

П = 88;ямой код

|-200210|

00000111110= 100102

О = 73;ратный код

инверти= 088;ование

11111000001= 011012

=  

прибавл= 077;ние единицы

11111000001= 011012       &nbs= p;          + 00000000000000012

Д = 86;полнительн&#= 1099;й код

 

11111000001= 011102

= 055;ри n-ра= ;зрядном представлеl= 5;ии отрицательl= 5;ого числа А дополнителn= 0;ным кодом старший разряд выде = 83;яется для хранени = 03; знака числа (единицы). В остальных разрядах записываетl= 9;я положительl= 5;ое число:

2n-1 - = |A|.

Чтобы число было положительl= 5;ым должно выпо = 83;няться условие:

|A| ≤ 2n-1

Следоваm= 0;ельно, максимальнl= 6;е значение модуля числ = 72; А в n-разрядно= 084; представлеl= 5;ии равно:

|A| =3D 2n-1

Тогда, минимальноk= 7; отрицательl= 5;ое число равно:

A =3D -2n-1 =

Пример. Определить диапазон чисел, которые могут хрk= 2;нится в оперативноl= 1; памяти в формате бол&= #1100;ших целых чисел со знаком (дl= 3;я хранения таких чисел отводится четыре ячейки памяти - 32 бита= ;).

Максимальн&= #1086;е положительl= 5;ое целое число (&#= 1089; учетом выделения одного разряда на знак) равно:

A =3D 231 – 1 =3D 2 147 483= 64710

Минималn= 0;ное отрицательl= 5;ое целое число = 088;авно:

A =3D -231 =3D -2 147 483 64810

Достоинl= 9;твами представлеl= 5;ия чисел в форм= 072;те с фиксированl= 5;ой запятой являются простота и  наглядносm= 0;ь представлеl= 5;ия чисел, а также  простота алгоритмов реализации арифметичеl= 9;ких  операций (вычитание благодаря и = 89;пользовани&#= 1102; дополнителn= 0;ного кода для представлеl= 5;ия отрицательl= 5;ых чисел своди = 90;ся к сложению).

Пример. = 042;ыполнить арифметичеl= 9;кое действие 300010 - 500010 в 16-ти разрядном компьютернl= 6;м представлеl= 5;ии.

Предстаk= 4;им положительl= 5;ое число в прямом, а отрицательl= 5;ое число в дополнителn= 0;ном коде:

Д&#= 1077;сятичное число

П&#= 1088;ямой код

О&#= 1073;ратный код

Д&#= 1086;полнительн= ый код

3000 =

00001011101= 11000

 = ;

 = ;

-5000=

0001001110001000

11101100011= 10111

11101100011= 10111

+0000000000000001

11101100011= 11000

= 057;ложим прямой код положительl= 5;ого числа с дополнителn= 0;ным кодом отрицательl= 5;ого числа. Получим результат в дополнителn= 0;ном коде:

3000-5000

 

 = ;

11111000001= 10000

Переведk= 7;м полученный дополнителn= 0;ный код в десятичное число:

1)    &nb= sp;  Инвертируk= 7;м дополнителn= 0;ный код: 0000011111001111

2)    &nb= sp;  Прибавим к полученномm= 1; коду 1 и получим мод = 91;ль отрицательl= 5;ого числа:

0000011111001111 <= /u1:p>

        =             &nb= sp;           +  000000000= 0000001

----------------------

0000011111010000 <= /u1:p>

3)    &nb= sp;  Переведем = 74; десятичное число и припишем зн = 72;к отрицательl= 5;ого числа: -2000.

Недостаm= 0;ком представлеl= 5;ия чисел в формате с фиксированl= 5;ой запятой является конечный диапазон представлеl= 5;ия величин, недостаточl= 5;ый для решения математичеl= 9;ких, физических, экономичесl= 2;их и других задач, в которых используютl= 9;я как очень малые, так и очень большие числа.

Предста&#= 1074;ление чисел в формате с плавающей запятой. Вещественнm= 9;е числа (конечные и бесконечныk= 7; десятичные дроби) хранятся и обрабатываn= 2;тся в компьютер = 77; в формате с плавающе= 081; запятой. В этом случае положение запятой в записи числ = 72; может изменяться.

Формат чисел с плавающей запятой базируется на экспоненциk= 2;льной форме запис = 80;, в которой может быть представлеl= 5;о любой число. Так число А может быт= 100; представлеl= 5;о в виде:

A =3D m×qn

гд= 077;       m – мантисса числа

            qос&= #1085;ование системы счисления,

            nпо&= #1088;ядок числа.

Для однозначноl= 9;ти представлеl= 5;ия чисел c плавающей запятой  используеm= 0;ся нормализовk= 2;нная форма, при которой мантисса  отвечает у = 89;ловию:

1/n ≤= ; |m| < 1.

Это означает,  что мантисса должна быть правильной дробью и иметь после запятой цифру, отличную от нуля.

Пример. Преобразуйm= 0;е десятичное число 888,888, записанное = 74; естественнl= 6;й форме, в экспоненциk= 2;льную форму с нормализовk= 2;нной мантиссой.

888,888 =3D 0,888888×103

Нормалиk= 9;ованная мантисса m =3D 0,888888, порядок n = =3D 3.

Число в форме с плавающей запятой занимает в  памят= ;и компьютера четыре (числ= о обычной точности)  или восемь байт (число двойной точности). При записи числа с плавающей запятой выд = 77;ляются разряды для хранения знака манти = 89;сы, знака порядка, порядка и мантиссы.

Диапазоl= 5; изменения чисел определяетl= 9;я количествоl= 4; разрядов, отведенных для хранени = 03; порядка числа, а точность (количество значащих ци = 92;р) определяетl= 9;я количествоl= 4; разрядов, от= 074;еденных для хранени = 03; мантиссы.

Пример. = 054;пределить максимальнl= 6;е число и его точность дл = 03; формата чисел обычной точности, если для хранения порядка и ег= 086; знака отвод = 80;тся 8 разрядов, а для хранени = 03; мантиссы и е= 077; знака 24 разряда.

0 <= /u1:p>

1 <= /u1:p>

1 <= /u1:p>

1 <= /u1:p>

1 <= /u1:p>

1 <= /u1:p>

1 <= /u1:p>

1 <= /u1:p>

0 <= /u1:p>

1 <= /u1:p>

1 <= /u1:p>

1 <= /u1:p>

1 <= /u1:p>

1 <= /u1:p>

1 <= /u1:p>

1 <= /u1:p>

1 <= /u1:p>

1 <= /u1:p>

1 <= /u1:p>

1 <= /u1:p>

1 <= /u1:p>

1 <= /u1:p>

1 <= /u1:p>

1 <= /u1:p>

1 <= /u1:p>

1 <= /u1:p>

1 <= /u1:p>

1 <= /u1:p>

1 <= /u1:p>

1 <= /u1:p>

1 <= /u1:p>

1 <= /u1:p>

з&#= 1085;ак и порядок

з&#= 1085;ак и мантисса

Максимальн = 86;е значение порядка числа соста = 74;ит 11111112 =3D 12710, и, следователn= 0;но, максимальнl= 6;е значение чи = 89;ла составит:

2127  =3D 1,7014118346046923173168730371588×1038

Точ= ;ность вычислений определяетl= 9;я количествоl= 4; разрядов, отведенных для хранени = 03; мантиссы чисел. Максимальнl= 6;е значение по = 83;ожительной мантиссы равно:  

223 - 1  223  =3D 2(10х2,3)  = 10002,3  =3D 10(3х2,3)  107

Та= ;ким образом максимальнl= 6;е значение ч&= #1080;сел обычной точности с учетом возможной точности вычислений = 89;оставит 1,701411×1038 (количество значащих цифр десятичногl= 6; числа в данном случае ограничено 7 разрядами).

При сложении и вычитании чисел в формате с плавающей з = 72;пятой сначала производитl= 9;я подготовитk= 7;льная операция вы&= #1088;авнивания порядков. Порядок меньшего (по модулю) числ= 072; увеличиваеm= 0;ся до величины порядка большего (по модулю) числа. Для того чтобы величина числа не изменилась, мантисса уменьшаетсn= 3; в такое же количество раз (сдвигается = 074; ячейке памяти впра = 74;о на количество разрядов, равное разности порядков чисел).  

Пос= ;ле выполнения операции выравниванl= 0;я одинаковые разряды чисел оказываютсn= 3; расположенl= 5;ыми в одних и тех же разрядах ячеек памят = 80;. Теперь операции сложения и вычитания чисел сводятся к сложению ил = 80; вычитанию мантисс.

Пос= ;ле выполнения арифметичеl= 9;кой операции дл = 03; приведения полученногl= 6; числа к стан= 076;артному формату с плавающей запятой про = 80;зводится нормализацl= 0;я, т.е. мантисса сдвигается влево или вправо так, чтобы ее первая значащая цифра попал = 72; в первый разряд посл = 77; запятой.

Пример. П= ;роизвести сложение чисел 0,1×23 и 0,1&tim= es;25 в формате с плавающей запятой.

Произвеk= 6;ем выравниванl= 0;е порядков и сложение мантисс:

         =     0,001×25

        =           = +0,100×25

   &nbs= p;               -----------

         =     0,101×25

При умножении чисел в формате с плавающей запятой пор= ядки складываютl= 9;я, а мантиссы перемножаюm= 0;ся. При делении из порядка делимого вы = 95;итается порядок делителя, а мантисса де = 83;имого делится на мантиссу делителя.

Пример. = 055;роизвести умножение чисел 0,1×23 и 0,1&tim= es;25 в формате с плавающей запятой.

После умножения будет получено число 0,01×28, которое после нормализацl= 0;и примет вид  0,1×27.

Задания для самостоятеl= 3;ьного выполнения

1.     Зk= 2;полнить таблицу, записав отр = 80;цательные десятичные числа в прямом, обра= 090;ном и дополнителn= 0;ном кодах в 16-ти разрядном представлеl= 5;ии:

Д&#= 1077;сятичные числа

П&#= 1088;ямой код

О&#= 1073;ратный код

Д&#= 1086;полнительн= ый код

-10 <= /u1:p>

 = ;

 = ;

&nb= sp;

-100 =

 = ;

 = ;

&nb= sp;

-1000=

 = ;

 = ;

 

-10000

 = ;

 = ;

 

2.     Зk= 2;полнить таблицу, записав десятичные числа в заданном компьютернl= 6;м представлеl= 5;ии:

Десятичны&#= 1077; числа

Компьютер&#= 1085;ое представле= 085;ие

целые неотрицате= 083;ьные числа

целые числа со знаком

255 <= /u1:p>

 = ;

 = ;

-255 =

 = ;

 = ;

32768=

 = ;

 = ;

-32768

 = ;

 = ;

3.     Зk= 2;полнить таблицу, записав максимальнm= 9;е и минимальныk= 7; значения чисел в заданном ко = 84;пьютерном представлеl= 5;ии:

К&#= 1086;мпьютерное представле= 085;ие

М&#= 1072;ксимальное значение

М&#= 1080;нимальное значение

целые неотрицате= 083;ьные числа

 = ;

 = ;

целые числа со знаком

 = ;

 = ;

большое целое число со знаком

 = ;

 = ;

 

4.  = ;   Выполни= ть арифметичеl= 9;кое действие 2010 - = 6010 в 16-ти разрядном компьютернl= 6;м представлеl= 5;ии.

5.  = ;   Записат= ь следующие числа в форм= 077; с плавающей запятой и нормализовk= 2;нной мантиссой:

        =     а) 217,93410; =      б) 7532110;=    в) 10,010110; &nb= sp; г) 20045010

6.  = ;   Определ= ить максимальнl= 6;е число и его точность дл = 03; формата чис&= #1077;л двойной точности, если для хранения порядка и ег= 086; знака отвод = 80;тся 11 разрядов, а для хранени = 03; мантиссы и е= 077; знака 53 разряда.

7.  = ;   Произве= сти сложение, вычитание, умножение и деление чисел 0,1×22 и 0,1&tim= es;2-2  в формате с плавающей запятой.