Logo GenDocs.ru

Поиск по сайту:  


Загрузка...

Лекции по информатике - файл лекция11.doc


Загрузка...
Лекции по информатике
скачать (2552.1 kb.)

Доступные файлы (35):

Cлайды к Л4.doc186kb.13.03.2003 15:11скачать
Лекция 4(Информационная мера Шеннона).doc431kb.11.03.2004 17:49скачать
Содержание.doc20kb.11.03.2004 19:38скачать
Лекция.doc61kb.28.02.2006 23:19скачать
Содержание.doc20kb.29.04.2004 17:41скачать
Лекция.doc97kb.22.04.2004 18:56скачать
Содержание.doc20kb.22.04.2004 18:25скачать
лекция11.doc196kb.28.04.2005 16:18скачать
Лекция.doc87kb.13.05.2004 18:21скачать
Слайд 2.doc24kb.16.04.2002 01:54скачать
Слайд 3.doc55kb.16.04.2002 02:58скачать
Слайд 4.doc21kb.16.04.2002 14:57скачать
Содержание.doc24kb.11.05.2005 16:57скачать
Лекция.doc97kb.18.05.2004 13:31скачать
Содержание.doc21kb.18.05.2004 13:38скачать
Лекция №3.doc79kb.09.03.2004 19:22скачать
МЕТОД_NEW.DOCскачать
Слайды к Л№3 Количество и качество информации.doc79kb.16.05.2003 18:27скачать
Содержание лекции.doc22kb.09.03.2004 19:22скачать
Лекция.doc66kb.25.03.2004 16:25скачать
Содержание.doc20kb.25.03.2004 16:21скачать
~WRL2645.tmp
Лекция.doc360kb.25.03.2004 17:53скачать
Содержание.doc19kb.26.03.2004 11:57скачать
Лекция.doc99kb.26.03.2004 13:09скачать
Содержание.doc20kb.26.03.2004 11:53скачать
~WRL0557.tmp
~WRL1303.tmp
~WRL2953.tmp
~WRL3757.tmp
Лекция.doc183kb.29.04.2004 18:06скачать
Содержание.doc22kb.29.04.2004 17:44скачать
Вопрос 4.doc24kb.22.04.2004 18:09скачать
Лекция.doc64kb.29.04.2004 18:02скачать
Содержание.doc20kb.22.04.2004 17:53скачать

лекция11.doc

Реклама MarketGid:
Загрузка...
Лекция № 11

Тема: Представление информации в цифровых автоматах

  1. Позиционные и непозиционные системы счисления

Системой счисления называется совокупность приемов и правил для записи чисел цифровыми знаками. Любая предназначенная для практического применения система счисления должна обеспечивать:

  • возможность представления любого числа в рассматриваемом диапазоне величин;

  • единственность представления (каждой комбинации символов должна соответствовать одна и только одна величина);

  • простоту оперирования числами.

Все системы представления чисел делят на позиционные и непозиционные.

^ Непозиционная система счисления – система, для которой значение символа не зависит от его положения в числе.

Для их образования используют в основном операции сложения и вычитания. Например, система с одним символом-палочкой встречалась у многих народов. Для изображения какого-то числа в этой системе нужно записать количество палочек, равное данному числу. Эта система неэффективна, так как запись числа получается длинной. Другим примером непозиционной системы счисления является римская система, использующая набор следующих символов: I, V, X, L, C, D, M и т. д. В этой системе существует отклонение от правила независимости значения цифры от положения в числе. В числах LX и XL символ X принимает два различных значения: +10 – в первом случае и –10 – во втором случае.

^ Позиционная система счисления – система, в которой значение символа определяется его положением в числе: один и тот же знак принимает различное значение. Например, в десятичном числе 222 первая цифра справа означает две единицы, соседняя с ней – два десятка, а левая – две сотни.

Любая позиционная система характеризуется основанием. Основание (базис) позиционной системы счисления – количество знаков или символов, используемых для изображения числа в данной системе.
^
Для позиционной системы счисления справедливо равенство




(1)


где A(q) – произвольное число, записанное в системе счисления с основанием q; ai – коэффициенты ряда (цифры системы счисления); n, m – количество целых и дробных разрядов.


На практике используют сокращенную запись чисел:

(2)


Например:

а) в двоичной системе (q=2)

11010.1012 = 1 · 24 + 1 · 23 + 0 · 22 + 1 · 21 + 0 · 20 + 1 · 2-1 + 0 · 2-2 + 1 · 2-3;

б) в троичной системе (q=3)

22120.2123 = 2 · 34 + 2 · 33 + 1 · 32 + 2 · 31 + 0 · 30 + 2 · 3-1 + 1 · 3-2 + 2 · 3-3;

в) в шестнадцатиричной системе (q=16)

A3F.1CD16 = A · 162 + 3 · 161 + F · 160 + 1 · 16-1 + C · 16-2 + D · 16-3.


  1. Методы перевода чисел

Числа в разных системах счисления можно представить следующим образом:








где

Значит, в общем виде задачу перевода числа из системы счисления с основанием q1 в систему счисления с основанием q2 можно представить как задачу определения коэффициентов bj нового ряда, изображающего число в системе с основанием q2. В такой постановке задачу перевода можно решить подбором коэффициентов bj.
^

Перевод чисел делением на основание новой системы


Перевод целых чисел осуществляется делением на основание q2 новой системы счисления, правильных дробей – умножением на основание q2. Действия деления и умножения выполняются по правилам q1-арифметики. Перевод неправильных дробей осуществляется раздельно по указанным правилам, результат записывается в виде новой дроби в системе с основанием q2.

Пример 1. Перевести десятичное число A = 6110 в систему счисления с q = 2.


61 | 2

60 30 | 2

b0 = 1 30 15 | 2

b1 = 0 14 7 | 2

b2 = 1 6 3 | 2

b3 = 1 2 1 = b5

b4 = 1

Ответ: 6110 = 1011112.

^

Табличный метод перевода


В простейшем виде табличный метод заключается в следующем: имеется таблица всех чисел одной системы с соотвествующими эквивалентами из другой системы; задача перевода сводится к нахождению соответствующей строки таблицы и выбору из нее эквивалента. Такая таблица очень громоздка и требует большой емкости памяти для хранения.

Другой вид табличного метода заключается в том, что имеются таблицы эквивалентов в каждой системе только для цифр этих систем и степеней основания (положительных и отрицательных); задача перевода сводится к тому, что в выражение ряда (1) для исходной системы счисления надо поставить эквиваленты из новой системы для всех цифр и степеней основания и произвести соответствующие действия (умножения и сложения) по правилам q2-арифметики. полученный результат этих действий будет изображать число в новой системе счисления.

Пример 2. Перевести десятичное число A = 113 в двоичную систему счисления, используя таблицу эквивалентов цифр и степеней основания

(q2 = 2).


Таблица 1 – Таблица эквивалентов

Десятичное число

Двоичное число

100

0001

101

1010

102

110 0100


Решение. Подставив значения двоичных эквивалентов десятичных цифр и степеней основания в (3), получим

A = 113 = 1 · 102 + 1 · 101 + 3 · 100 = 001 · 1100100 + 0001 · 1010 + 0011 · 0001 = 11100012.

Ответ: 11100012.


  1. ^ Форматы представления чисел с фиксированной плавающей запятой

Число 0,028 можно записать так: 28·10-3, или 2,8·10-2, или 0,03 (с округлением) и т. д. В компьютере используются две формы представления чисел.

Представление чисел с фиксированной запятой (точкой). Оно характеризуется тем, что положение разрядов числа в машинном изображении остается всегда постоянным независимо от величины самого числа.

Число А можно представить в виде


A=[A]ф KA,


где [A]ф – машинное изображение числа в формате с фиксированной запятой, значение которого лежит в пределах


-1 < [A]ф < 1;


KA – масштабный коэффициент, выбирается так, чтобы сохранить соответствие разрадов всех чисел, которыми оперирует компьютер.

Формат (разрядная сетка) машинного изображения чисел с фиксированной запятой разбивается на знаковую часть и поле числа. В знаковую часть записывается информация о знаке числа: 0, если A≥0; 1, если A<0.


0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

№ разряда



Поле числа
^

Знаковая часть




Например, числа А1 и A2 в прямом коде имеют машинное изображение:


0

0

1

0

0

1

1

1

0

0

0

1

0

1

1

1

A1 = 0.0100111000101112;


1

0

1

0

0

1

1

1

0

0

0

1

0

1

1

1

A2 = – A1 = 0.0100111000101112.


Представление чисел в формате с плавающей запятой. Оно характеризуется тем, что положение разряда числа в его машинном изображении непостоянно, и число А записывается следующим образом:


A = mApA,


где mA – мантисса числа A; при представлении числа в компьютере мантисса должна удовлетворять ограничению 2-1 ≤ | mA | ≤ 1 – 2-n; n – количество разрядов для изображения мантиссы без знака; pA – порядок числа A.


Формат машинного изображения числа с плавающей запятой содержит знаковые части и поля мантиссы и порядка.


0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

№ разряда


^ Форматы данных и машинные коды чисел.

Числа в компьютерах в двоичных кодах представляются как с фиксированной точкой или запятой, так и с плавающей точкой или запятой. Представление чисел в формате с фиксированной точкой получило название естественной формы числа, представление с плавающей точкой – нормальной формы числа. Под те или иные форматы отводится заранее известное количество разрядов (бит) -16,32 и т.д. Эта же величина может быть выражена в байтах, с учетом того, что 1 байт=8 бит.


^ Представление чисел в формате с фиксированной точкой


Для чисел в естественной форме положение точки жестко фиксируется:

  • Для целых чисел точка располагается справа от младшего разряда:

00000000000000002 =010, 0111111111111111. 2=32767.10;

  • Для правильных дробей – перед старшим разрядом:

0.0000000000000002=010, 0.0000000000000012=0.000 030 517 57810;

  • Для смешанных дробей – в определенном месте, отделяющем целую часть числа от дробной:

000000.00000000002=0.010, 000001.00000000012=1.000 976 56310

Наиболее часто такая форма используется для целых чисел и целых чисел без знака. Количество разрядов может быть либо 16 (вид Н), либо 32 (вид F).

Во всех форматах знак числа помещается в старший разряд и кодируется как 0 – знак положительного числа, либо как 1 – знак отрицательного числа. Знак отделяется от самого числа воображаемой точкой (рис.)


Знак 214 213 21 20




1

1

1




1

1

Аmin

Формат Н
























0

1

1




1

1

Аmax




0

1

2



14

15





Знак 230 229 21 20




1

1

1




1

1

Аmin

Формат F
























0

1

1




1

1

Аmax




0

1

2



14

15





^ Рис. 1.3. Форматы чисел с фиксированной точкой.


Фиксированная точка позволяет задать число только в строго определенном диапазоне. В формате Н числа можно задавать

От 1111 1111 1111 11112 до 0111 1111 1111 11112,

т.е. от -3276710 до 3276710, или от (1 – 215 ) до (215-1).


В формате F числа могут находиться в интервале

От 1111 1111 1111 1111 1111 1111 1111 11112

До 0111 1111 1111 1111 1111 1111 1111 11112,

т.е. от -7 F F F F F F F16 до 7 F F F F F F F16.

Естественно, что представление в шестнадцатиричной системе для формы F предпочтительнее двоичной.

Рассмотрим несколько примеров.


ЗАДАЧИ


1.3.1. Представить в форматах Н и F числа -12710 и 12710


12710=1*26+1*25+1*24+1*23+1*22+1*21+1*20=0111 11112.

А2Н=0000 0000 0111 11112, А2F=0000 00 E F16.

-12710=- (1*26+1*25+1*24+1*23+1*22+1*21+1*20)= -0111 11112.

А2Н=1000 0000 0111 11112, А2F=8000 00 E F16.


1.3.2. Определить, какие из следующих шестнадцатиричных чисел положительные, а какие отрицательные: 9754, 157, ADF, 7654AD и DFEA.

Знак числа определяется по первой цифре: если она меньше 8 (б1000), то число положительное, если значение от 8 до F, то отрицательное. Таким образом, получаем 9754<0, 157>0, ADF<0, 7654AD>0 и DFEA<0.


^ Представление чисел в формате с плавающей точкой


Для расширения диапазона рассматриваемых чисел по сравнению с естественной формой чисел используется формат с плавающей точкой или нормальная форма. Любое число в этом формате представляется, как А= ±maE±Pа,

где ma - мантисса числа А; Е – основание системы счисления; ±Ра- порядок. Все эти величины – двоичные числа без знака. На рис. 2 приведен формат числа в нормальной форме. Старший разряд (нулевой) содержит знак мантиссы, первый разряд – знак порядка, 6 разрядов, со второго по седьмой, определяют значение порядка, а остальные – мантиссу. Нормальная форма может быть представлена коротким форматом Е (4 байта), длинным форматом D (8 байт) и повышенной точности (16 байт). Во всех этих формах представления первый байт остается постоянным, изменяется только область, отведенная под мантиссу.


Знак ma Знак Ра Порядок Мантисса

Знак ma

Знак Ра

Ра

ma

0 1 2 … 7 8 31

^ Рис. 2. Нормальная форма числа


При таком представлении чисел 0 может быть записан 64 разными способами, т.к. для этого подходят любые значения порядков 0*20=0*21=…=0*263. А другие числа могут иметь много различных форм записи. Например, 153610=3*29=6*28=…=768*21.

Для однозначного представления чисел мантиссу нормализуют, т.е. накладывают ограничение 1/Е≤m<1.

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

При использовании нормальной формы для части компьютеров характерно смещение оси порядков в область положительных значений. В этом случае арифметические действия производятся над порядками, не имеющими знака. В нормальной форме под значение порядка отводится 7 разрядов, один из них знаковый. Таким образом, значение порядка может лежать в интервале 26≤Р≤26-1, т.е. от -64 до 63.

Сместив порядок на 26=64=4016, мы получаем интервал возможных значений 0≤Р≤27-1=127. Смещенный порядок на 4016 называется характеристикой и вычисляется как Рx=P+40.

Если характеристика равна 40, то порядок равен 0; если характеристика меньше 40, то порядок отрицателен; если больше – то положителен.


ЗАДАЧИ


1.3.3. Представить в нормальной сетке Е числа 32001,510 и -32001,510


Представим числа в шестнадцатиричном коде 32001,510=7D01,816 и

-32001,510. =-7D01,816

Затем найдем нормализованные мантиссы и характеристики.

m=7D01,816 m=0,7D018,

при этом характеристика становится равной Рx=40+4=44


Знак m Рx m

0

100 0100

0111 1101 0000 0001 1000 0000

447D0180>0



m=-7D01,816 m=-0,7D018,

при этом характеристика становится равной Рx=40+4=44


Знак m Рx m

1

100 0100

0111 1101 0000 0001 1000 0000

С47D0180>0



4. Двоичная арифметика


Арифметические операции во всех позиционных системах счисления выполняются по одним и тем же хорошо известным вам правилам.

Сложение. Рассмотрим сложение чисел в двоичной системе счисления. В его основе лежит таблица сложения одноразрядных двоичных чисел:


0+0=0

0+1=1

1+0=1

1+1=10

Важно обратить внимание на то, что при сложении двух единиц происходит переполнение разряда и производится перенос в старший разряд. Переполнение разряда наступает тогда, когда величина числа в нем становится равной или большей основания.

Сложение многоразрядных двоичных чисел происходит в соответствии с вышеприведенной таблицей сложения с учетом возможных переносов из младших разрядов в старшие.

В качестве примера сложим в столбик двоичные числа 1102 и 112 :

1102

+

112

10012

Проверим правильность вычислений сложением в десятичной системе счисления. Переведем двоичные числа в десятичную систему счисления и затем их сложим:

1102=1*22 + 1*21+ 0*20 = 610;

112 = 1*21 + 1*20 = 310;

610 + 310 = 910.

Теперь переведем результат двоичного сложения в десятичное число:

10012 = 1*23 +0*22 + 0*21 + 1*20 = 910/

Сравним результаты – сложение выполнено правильно.

Вычитание. Рассмотрим вычитание двоичных чисел. В его основе лежит таблица вычитания одноразрядных двоичных чисел. При вычитании из меньшего числа (0) большего (1) производится заем из старшего разряда. В таблице заем обозначен 1 с чертой:

0-0 =_0

0-1 =11

1-0 = 1

1-1 = 0

Вычитание многоразрядных двоичных чисел происходит в соответствии с вышеприведенной таблицей вычитания с учетом возможных заемов из старших разрядов. В качестве примера произведем вычитание двоичных чисел 1102 и 112:

1102

-

112

112


Умножение. В основе умножения лежит таблица умножения одноразрядных двоичных чисел:

0 *0 = 0

0 *1 = 0

1 *0 =0

1 * 1 =1

Умножение многоразрядных двоичных чисел происходит в соответствии с вышеприведенной таблицей умножения по обычной схеме, применяемой в десятичной системе счисления с последовательным умножением множимого на цифры множителя. В качестве примера произведем умножение двоичных чисел и:

1102

x

112___

110

110____

100102


Деление. Операция деления выполняется по алгоритму, подобному алгоритму выполнения операции деления в десятичной системе счисления. В качестве примера произведем деление двоичного числа 1102 и 112:




1102 112___

- 102

11

0


  1. Коды: прямой, обратный, дополнительный.

В компьютерной технике применяются три формы записи (кодирования) целых чисел со знаком: прямой код, обратный код, дополнительный код.. Последние две формы применяются особенно широко, так как позволяют упростить конструкцию арифметико-логического устройства компьютера путем замены разнообразных арифметических операций операцией сложения.

  • ^ Положительные числа в прямом, обратном и дополнительном кодах изображаются одинаково – с цифрой 0 в знаковом разряде.


ПРИМЕРЫ. Число 110=12: Число 12710=11111112


0

1

1

1

1

1

1

1

Знак числа «+»






0

0

0

0

0

0

0

1

Знак числа «+»



  • ^ Отрицательные числа в прямом, обратном и дополнительном кодах имеют разное изображение.

  1. Прямой код. В знаковый ряд помещается цифра 1, а в разряды цифровой части числа – двоичный код его абсолютной величины.


ПРИМЕРЫ. Прямой код числа -1: Прямой код числа -127:


1

1

1

1

1

1

1

1

Знак числа «-»






1

0

0

0

0

0

0

1

Знак числа «-»




  1. Обратный код получается инвентированием всех цифр двоичного кода абсолютной величины числа, включая разряд знака: нули заменяют единицами, а единицы – нулями.


ПРИМЕРЫ. Число: -1. Число: -127.

Код модуля числа: 0 0000001. Код модуля числа: 0 1111111

Обратный код числа: 1 1111110. Обратный код числа: 1 0000000


1

0

0

0

0

0

0

0









1

1

1

1

1

1

1

0




  1. Дополнительный код получается образованием обратного кода с последующим прибавлением единицы к его младшему разряду.



ПРИМЕРЫ. Дополнительный код числа-1: Дополнительный код числа-127


1

0

0

0

0

0

0

1









1

1

1

1

1

1

1

1


Обычно отрицательные десятичные числа при вводе в машину автоматически преобразуются в обратный или дополнительный двоичный код и в таком виде хранятся, перемещаются и участвуют в операциях. При вводе таких чисел из машины происходит обратное преобразование в отрицательные десятичные числа.


  1. ^ Выполнение арифметических операций с числами с фиксированной и плавающей запятой


Операция сложения чисел в прямом, обратном и дополнительном кодах выполняется на двоичных сумматорах соответствующего кода.


^ АРИФМЕТИЧЕСКИЕ ДЕЙСТВИЯ НАД ЦЕЛЫМИ ЧИСЛАМИ


Сложение и вычитание. В большинстве компьютеров операция вычитания не используетсяю. Вместо неё производится сложение уменьшаемого с обратным или дополнительным кодом вычитаемого. Это позволяет существенно упростить конструкцию АЛУ.

При сложении обратных кодов чисел А и B имеет место чеиыре основных и два особых случая. Рассмотрим их.


Случай 1. А и В положительные. При суммировании складываются все разряды, включая разряд знака. Так как знаковые разряды положительных слагаемых равны нулю, разряд знака суммы тоже равен нулю.

Десятичная запись: Двоичные коды:


0 0000011

+

0 0000111

0 0001010

3

+

7

10


Получен правильный результат.


Случай 2. А положительное, В отрицательное и по абсолютной величине больше, чем А . Приведем пример.

Десятичная запись Двоичные коды

3

+

-10

-7


Получен правильный результат в обратном коде. При переводе в прямой код биты цифровой части результата инвертируются: 1 0000111=-710


Случай 3. А положительное, В отрицательное и по абсолютной величине меньше, чем А . Приведем пример.


Десятичная запись Двоичные коды

10

+

-3

7


Компьютер исправляет полученный первоначально неправильный результат (6 вместо 7) переносом единицы из знакового разряда в младший разряд суммы.


Случай 4. А и В отрицательные. Приведем пример.

Десятичная запись Двоичные коды

-3

+

-7

-10


Полученный первоначальный неправильны результат (обратный код числа -1110) вместо обратного кода числа -1010) компьютер исправляет переносом единицы из знакового разряда в младший разряд суммы. При переводе результата в прямой код биты цифровой части числа инвертируются: 1 0001010= -1010.

При сложении может возникнуть ситуация, когда старшие разряды результата операции не помещаются в отведенной для него области памяти. Такая ситуация называется переполнением разрядной сетки формата числа. Для обнаружения переполнения и оповещения о возникшей ошибке в компьютере используются специальные средства. Ниже приведены два возможных случая переполнения.


Случай 5. А и В положительные, сумма А и В больше либо равна 2n-1, где n – количество разрядов количество разрядов для однобайтового формата n=8, 2n-1=2-7=128). Приведем пример.


Десятичная запись: Двоичные коды:


65 0 1000001

+ + 0 1100001

97 1 0100010 Переполнение

162


Семи разрядов цифровой части числового формата недостаточно для размещения восьмиразрядной суммы (16210=101000102), поэтому старший разряд суммы оказывается в знаковом разряде. Это вызывает несовпадение знака суммы и знаков слагаемых, что является свидетельством переполнения разрядной сетки.


Случай 6. А и В отрицательные, сумма абсолютных величин А и В больше, либо равна 2n-1. Приведем пример.


Десятичная запись: Двоичные коды:


-63 1 10000000 Обратный код числа -63

+ +

-95 1 0100000 Обратный код числа -95

-158 0 1100000 Переполнение

+1


Здесь знак суммы тоже не совпадает со знаками слагаемых, что свидетельствует о переполнении разрядной сетки.

Все рассмотренные случаи имеют место и при сложении дополнительных кодов чисел.


Случай 1. А и В положительные. Здесь нет отличия от случая 1, рассмотренного для обратного кода.


Случай 2. А положительное, В отрицательное и по абсолютной величине больше, чем А. Приведем пример.


Десятичная запись: Двоичные коды:


3 00000011

+ +11110110 Дополнительный код числа -10

-10 11111001 Дополнительный код числа -7

-7


Получен правильный результат в дополнительном коде. При переводе в прямой код биты цифровой части результата инвентируются и к младшему разряду прибавляется единица: 1 0000110+1 0000111=-710.


Случай 3. А положительное, В отрицательное и по абсолютной величине меньше, чем А. Приведем пример.


Десятичная запись: Двоичные коды:


10 00001010

+ +11111101 Дополнительный код числа -3

-3 00000111

7

перенос отбрасывается


Получен правильный результат. Единицу переноса из знакового разряда компьютер отбрасывает.


Случай 4. А и В отрицательные и по абсолютной величине меньше, чем А. Приведем пример.


Десятичная запись: Двоичные коды:


-3 11111101 Дополнительный код числа -3

+ +11111001 Дополнительный код числа -7

-7 11110110 Дополнительный код числа -10

-10

перенос отбрасывается


Получен правильный результат в дополнительном коде. Единицу переноса из знакового разряда компьютер отбрасывает.

^ Случаи переполнения для дополнительных кодов рассматриваются по аналогии со случаями 5 и 6 для обратных кодов.


Сравнение рассмотренных форм кодирования целых чисел со знаком показывает: на преобразование отрицательного числа в обратный код компьютер затрачивает меньше времени, чем на преобразование в дополнительный код, так как последнее состоит из двух шагов – образования обратного кода и прибавления единицы к его младшему разряду; время выполнения сложения для дополнительных кодов чисел меньше, чем для их обратных кодов, потому что в таком сложении нет переноса единицы из знакового разряда в младший разряд результата.


  • ^ Умножение и деление. Во многих компьютерах умножение производится как последовательность сложений и сдвигов. Для этого в АЛУ имеется регистр, называемый накапливающим сумматором, который до начала выполнения операции содержит число «нуль».в процессе выполнения операции в нем поочередно размещаются множимое и результаты промежуточных сложений, а по завершении операции – окончательный результат.

Другой регистр АЛУ, участвующий в выполнении этой операции, вначале содержит множитель. Затем по мере выполнения сложений содержащееся в нем число уменьшается, пока не достигнет нулевого значения.

Умножим 1100112 на 1011012.

Пример. Накапливающий сумматор: Множитель:

0 0 0 0 0 0 0 0 0 0 0 0 101101

+ 1 1 0 0 1 1

1 1 0 0 1 1 101100

+

1 1 0 0 1 1 Сдвиг на две позиции влево

1 1 1 1 1 1 1 1 101000

+ 1 1 0 0 1 1_____

1 0 1 0 0 1 0 1 1 1 100000

+ 1 1 0 0 1 1 Сдвиг на две позиции влево

1 0 0 0 1 1 1 1 0 1 1 1 000000


Деление для компьютера является трудной операцией. Обычно оно реализуется путем многократного прибавления к делимому дополнительного кода делителя.


^ АРИФМЕТИЧЕСКИЕ ДЕЙСТВИЯ НАД НОРМАЛИЗОВАННЫМИ ЧИСЛАМИ


К началу выполнения арифметического действия операнды операции помещаются в соответствующие регистры АЛУ.

  • ^ Сложение и вычитание. При сложении и вычитании сначала производится подготовительная операция, называемая выравниванием порядков.



В процессе выравнивания порядков мантисса числа с меньшим порядком сдвигается в своем регистре вправо на количество разрядов, равное разности порядков операндов. После каждого сдвига порядок увеличивается на единицу.



В результате выравнивания порядков одноименные разряды чисел оказываются расположенными в соответствующих разрядах обоих регистров, после чего мантиссы складываются или вычитаются. В случае необходимости полученный результат нормализуется путем сдвига мантиссы результата влево. После каждого сдвига влево порядок результата уменьшается на единицу.


Пример 1.

Сложим двоичные нормализованные числа 0.10111*2-1 и 0.11011*210. Разность порядков слагаемых здесь равна трем, поэтому перед сложением мантисса первого числа сдвигается на три разряда вправо:

  1. 0 0 0 1 0 1 1 1 * 210

0. 1 1 0 1 1 * 210

0. 1 1 1 0 1 1 1 1 * 210


Пример 2.

Выполним вычитание двоичных нормализованных чисел 0.10101*210 и 0.11101*21. Разность порядков уменьшаемого и вычитаемого здесь равна единице, поэтому перед вычитанием мантисса второго числа сдвигается на один разряд вправо:


  1. 1 0 1 0 1 * 210

0. 0 1 1 1 0 1 * 210

0. 0 0 1 1 0 1 * 210


Результат получился не нормализованным , поэтому его мантисса сдвигается влево на два разряда с соответствующим уменьшением порядка на две единицы: 0.1101 * 20.







Скачать файл (2552.1 kb.)

Поиск по сайту:  

© gendocs.ru
При копировании укажите ссылку.
обратиться к администрации
Рейтинг@Mail.ru