Вычислительные машины
ЛЕКЦИЯ N 1
ОСНОВЫ МАШИННОЙ АРИФМЕТИКИ
Системы счисления и способы перевода чисел из одной системы в другую.
Системой счисления называют систему приемов и правил, позволяющих устанавливать взаимно-однозначное соответствие между любым числом и его представлением в виде совокупности конечного числа символов. Множество символов, используемых для такого представления, называют цифрами.
В зависимости от способа изображения чисел с помощью цифр системы счисления делятся на “позиционные” и “непозиционные”.
В “непозиционных” системах любое число определяется как некоторая функция от численных значений совокупности цифр, представляющих это число. Цифры в непозиционных системах счисления соответствуют некоторым фиксированным числам. Пример непозиционной системы - римская система счисления. В вычислительной технике непозиционные системы не применяются.
Систему счисления называют “позиционной”, если одна и та же цифра может принимать различные численные значения в зависимости от номера разряда этой цифры в совокупности цифр, представляющих заданное число. Пример такой системы - арабская десятичная система счисления.
В позиционной системе счисления любое число записывается в виде последовательности цифр:
A = 7+ 0 a 4m-1 0 a 4m-2 0 ... a 4k 0 ... a 40 0 , a 4-1 0 ... a 4-l 0 (I)
Позиции, пронумерованные индексами k (-l
Каждая цифра a 4k 0 в записываемой последовательности может принимать одно из N возможных значений. Количество различных цифр (N), используемых для изображения чисел в позиционной системе счисления, называется основанием системы счисления. Основание N указывает, во сколько раз единица k+1 -го разряда больше единицы k -го разряда, а цифра a 4k 0 соответствует количеству единиц k –го разряда, содержащихся в числе.
Таким образом, число может быть представлено в виде суммы:
(A) 4N 0 = 7+ 0(a 4m-1 0N 5m-1 0 + a 4m-2 0N 5m-2 0 +...+ a 40 0 + a 4-1 0N 5-1 0 +...+ a 4-l 0N 5-l 0) (II)
Основание позиционной системы счисления определяет ее название. В вычислительной технике применяются двоичная, восьмеричная, десятичная и шестнадцатеричная системы. В дальнейшем, чтобы явно указать используемую систему счисления, будем заключать число в скобки и в индексе указывать основание системы счисления.
В двоичной системе счисления используются только две цифры: 0 и 1. Любое двоичное число может быть представлено в следующей форме:
(A) 42 0 = 7+ 0(a 4m-1 02 5m-1 0 + a 4m-2 02 5m-2 0 + ... + a 40 0 + a 4-1 02 5-1 0 + ... + a 4-l 02 5-l 0)
Например, двоичное число (10101,101) 42 0 = 1*2 54 0+0*2 53 0+1*2 52 0+0*2+1+1*2 5-1 0+0*2 5-2 0+1*2 5-3 0 = (21,625) 410
В восьмеричной системе счисления для записи чисел используется восемь цифр (0,1,2,3,4,5,6,7), а в шестнадцатеричной - шестнадцать (0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F).
Таблица для перевода чисел из одной системы счисления в другую.
Двоичные числа ¦ Восьмеричные числа ¦ Десятичные числа ¦ Шестнадцатеричные числа
0,0001 ¦ 0,04 ¦ 0,0625 ¦ 0,1
0,001 ¦ 0,1 ¦ 0,125 ¦ 0,2
0,01 ¦ 0,2 ¦ 0,25 ¦ 0,4
0,1 ¦ 0,4 ¦ 0,5 ¦ 0.8
1 ¦ 1 ¦ 1 ¦ 1
10 ¦ 2 ¦ 2 ¦ 2
11 ¦ 3 ¦ 3 ¦ 3
100 ¦ 4 ¦ 4 ¦ 4
101 ¦ 5 ¦ 5 ¦ 5
110 ¦ 6 ¦ 6 ¦ 6
111 ¦ 7 ¦ 7 ¦ 7
1000 ¦ 10 ¦ 8 ¦ 8
1001 ¦ 11 ¦ 9 ¦ 9
1010 ¦ 12 ¦ 10 ¦ A
1011 ¦ 13 ¦ 11 ¦ B
1100 ¦ 14 ¦ 12 ¦ C
1101 ¦ 15 ¦ 13 ¦ D
1110 ¦ 16 ¦ 14 ¦ E
1111 ¦ 17 ¦ 15 ¦ F
10000 ¦ 20 ¦ 16 ¦ 10
Для хранения и обработки данных в ЭВМ используется двоичная система, так как она требует наименьшего количества аппаратуры по сравнению с другими системами. Все остальные системы счисления применяются только для удобства пользователей.
В двоичной системе очень просто выполняются арифметические и логические операции над числами.
Таблица сложения:
0 + 0 = 0
0 + 1 = 1
1 + 0 = 1
1 + 1 = 10
Таблица умножения:
0 * 0 = 0
0 * 1 = 0
1 * 0 = 0
1 * 1 = 1
Многоразрядные числа складываются, вычитаются, умножаются и делятся по тем же правилам, что и в десятичной системе счисления.
Перевод числа из одной системы в другую выполняется по универсальному алгоритму, заключающемуся в последовательном делении “целой” части числа и образующихся “целых частных” на основание новой системы счисления, записанное в исходной системе счисления, и в последующем умножении дробной части и дробных частей получающихся произведений на то же основание, записанное в исходной системе счисления.
При переводе “целой” части получающиеся в процессе последовательного деления остатки представляют цифры целой части числа в новой системе счисления, записанные цифрами исходной системы счисления. Последний остаток является “старшей” цифрой переведенного числа.
При переводе “дробной” части числа “целые” части чисел, получающихся при умножении, не участвуют в последующих умножениях. Они представляют собой цифры дробной части исходного числа в новой системе счисления, изображенные числами старой системы. Значение первой целой части является первой цифрой после запятой переведенного числа.
Пример перевода числа 30,6 из десятичной системы в двоичную:
Перевод целой части Перевод дробной части
Последовательное Остатки Целые части - Последовательное
деление разряды переведенной дроби умножение
0, 6
X
2
30 / 2 0 ------¬ -------------------
15 / 2 1 -----¬¦ ----- 1, 2
7 / 2 1 ----¬¦¦ ¦ X
3 / 2 1 ---¬¦¦¦ ¦ 2
1 / 2 1 --¬¦¦¦¦ ¦ -------------------
0 ¦¦¦¦¦ ¦---- 0, 4
¦¦¦¦¦ ¦¦ X
¦¦¦¦¦ ¦¦ 2
¦¦¦¦¦ ¦¦ -------------------
¦¦¦¦¦ ¦¦--- 0, 8
¦¦¦¦¦ ¦¦¦ X
¦¦¦¦¦ ¦¦¦ 2
¦¦¦¦¦ ¦¦¦ -------------------
¦¦¦¦¦ ¦¦¦-- 1, 6
¦¦¦¦¦ ¦¦¦¦
Результат: 11110,1001
Если при переводе дробной части получается периодическая
дробь, то производят округление, руководствуясь заданной точ-
ностью вычислений.
Пример перевода числа 111110,01 из двоичной системы в десятичную.
1Перевод целой части Перевод дробной части
0, 0100
X
1010
_111110| _1010 . -------------------
_1010 . |110 --------¬ ------ 10, 1000
1011 ¦ ¦ X
_1010 . ¦ ¦ 1010
10 ------------+¬ ¦ -------------------
¦¦ ¦---- 101, 0000
¦¦ ¦¦
Результат: 62,25
- 5 -
Примечание 1: 1010 - основание десятичной системы счисления
в двоичной записи.
Примечание 2: десятичные эквиваленты разрядов искомого числа
находим по таблице.
При переводе чисел из любой системы счисления в десятичную
удобнее пользоваться непосредственно формулой (II):
(775) 48 0 = 7*8 52 0 + 7*8 + 5 = (509) 410
Для осуществления автоматического перевода десятичных чисел
в двоичную систему счисления необходимо вначале каким-то образом
ввести их в машину, Для этой цели обычно используется двоично-де-
сятичная запись чисел или представление этих чисел в кодах ASCII.
При двоично-десятичной записи каждая цифра десятичного числа
заменяется четырехзначным двоичным числом (тетрадой):
(983,65) 410 0 = (1001 1000 0011, 0110 0101) 42-10
При записи чисел в кодах ASCII цифрам от 0 до 9 поставлены
в соответствие восьмиразрядные двоичные коды от 00110000 до
00111001.
ЭВМ, предназначенные для обработки экономической информации,
например IBM AT, позволяют производить арифметические операции в
десятичной системе счисления над числами, представленными в дво-
ично-десятичных кодах и кодах ASCII.
Шестнадцатеричная и восьмеричная системы счисления использу-
ются только программистами и операторами ЭВМ, так как представле-
ние чисел в этих системах более компактное, чем в двоичной, и пе-
ревод из этих систем в двоичную и обратно выполняется очень прос-
то (основания этих систем представляют собой целую степень числа
2).
Для перевода восьмеричного числа в двоичное достаточно каж-
дый восьмеричный разряд представить тремя двоичными (триадой), а
для перевода шестнадцатиричного числа - четырьмя (тетрадой):
(376,51) 48 0 = (011 111 110, 101 001) 42
(1AF8) 416 0 = (0001 1010 1111 1000) 42
ПЕРВЫЙ СЕМЕСТР
ЛЕКЦИЯ N 2
2ОСНОВЫ МАШИННОЙ АРИФМЕТИКИ
2Формы представления чисел в ЭВМ.
Разряд двоичного числа представляется в ЭВМ некоторым техни-
ческим устройством, например, триггером, двум различным состояни-
ям которого приписываются значения 0 и 1. Группа таких устройств,
предназначенная для представления в машине многоразрядного числа,
называется регистром.
Структура двоичного регистра, представляющего в машине
n-разрядное слово:
----T---T---T---T---¬
¦n-1¦n-2¦...¦ 1 ¦ 0 ¦
L---+---+---+---+----
Отдельные запоминающие элементы пронумерованы от 0 до n-1.
Количество разрядов регистра определяет точность представления
чисел. Путем соответствующего увеличения числа разрядов регистра
может быть получена любая точность вычислений, однако это сопря-
жено с увеличением количества аппаратуры (в лучшем случае зависи-
мость линейная, в худшем - квадратичная).
В ЭВМ применяются две основные формы представления чисел:
полулогарифмическая с плавающей запятой и естественная с фиксиро-
ванным положением запятой.
При представлении чисел с фиксированной запятой положение
запятой закрепляется в определенном месте относительно разрядов
числа и сохраняется неизменным для всех чисел, изображаемых в
данной разрядной сетке. Обычно запятая фиксируется перед старшим
разрядом или после младшего. В первом случае в разрядной сетке
могут быть представлены только числа, которые по модулю меньше 1,
во втором - только целые числа.
Для кодирования знака числа используется старший ("знако-
вый") разряд.
При выполнении арифметических действий над правильными дро-
бями могут получаться двоичные числа, по абсолютной величине
больше или равные единице, что называется 1 переполнением разрядной
1сетки. 0 Для исключения возможности переполнения приходится масшта-
бировать величины, участвующие в вычислениях.
Диапазон представления правильных двоичных дробей:
2 5-(n-1) 0 7, 0 ¦(A)¦ 7 , 0 1 - 2 5-(n-1) 0 .
.
- 2 -
Числа, которые по абсолютной величине меньше единицы младше-
го разряда разрядной сетки, называются 2машинным нулем 0.
Диапазон представления целых двоичных чисел со знаком в
n-разрядной сетке:
0 7, 0 ¦(A)¦ 7 , 0 2 5n-1 0 - 1 .
Использование представления чисел с фиксированной запятой
позволяет упростить схемы машины, повысить ее быстродействие, но
представляет определенные трудности при программировании. В нас-
тоящее время представление чисел с фиксированной запятой исполь-
зуется как основное только в микроконтроллерах.
В универсальных ЭВМ основным является представление чисел с
плавающей запятой. Представление числа с плавающей запятой в об-
щем случае имеет вид:
A = 7+ 0m * N 5+p 0 ,
где N - основание системы счисления,
p - целое число, называемое порядком числа A,
m - мантисса числа A (¦m¦
Так как в ЭВМ применяется двоичная система счисления, то
A = 7+ 0m * 2 5+p 0 ,.
причем порядок и мантисса представлены в двоичной форме.
Двоичное число называется нормализованным, если его мантисса
удовлетворяет неравенству
1/2 7, 0 ¦ m ¦ 7 0
Неравенство показывает, что двоичное число является нормали-
зованным, если в старшем разряде мантиссы стоит единица. Напри-
мер, число 0,110100*10 5100 0 - нормализованное, а 0,001101*10 5110 0 -
ненормализованное.
Ситуация, когда в процессе вычислений получено число с ¦m¦ 7. 01
называется переполнением разрядной сетки.
Нормализованное представление чисел позволяет сохранить в
разрядной сетке большее количество значащих цифр и, следователь-
но, повышает точность вычислений. Однако современные ЭВМ позволя-
ют, при необходимости, выполнять операции также и над ненормали-
зованными числами.
.
- 3 -
Диапазон представления нормализованных двоичных чисел, взя-
тых по абсолютному значению, удовлетворяет неравенству:
2 5-1 0* 5 02 5-(2k-1) 7 , 0 ¦(A)¦ 7, 0 (1 5 0- 5 02 5-l 0) 5 0* 5 02 52k-1 0 ,
где l - число разрядов мантиссы;
k - число разрядов порядка;
2 5-1 0 - наименьшее значение нормализованной мантиссы;
1-2 5-l 0 - наибольшее значение нормализованной мантиссы.
Широкий диапазон представления чисел с плавающей запятой
удобен для научных и инженерных расчетов. Для повышения точности
вычислений во многих ЭВМ предусмотрена возможность использования
формата двойной длины, однако при этом происходит увеличение зат-
рат памяти на хранение данных и замедляются вычисления.
2Представление отрицательных чисел в ЭВМ.
Для кодирования знака двоичного числа используется старший
("знаковый") разряд (ноль соответствует плюсу, единица - минусу).
Такая форма представления числа называется 2прямым кодом 0.
Формула для образования прямого кода правильной дроби имеет вид:
7(
72 0 A, если A 7. 00,
[A] 4пр 0 = 7 *
72 0 1-A, если A
79
Примеры:
A = 0,110111 --> [A] 4пр 0 = 0,110111
A = -0,110111 --> [A] 4пр 0 = 1 - (-0,110111) = 1,110111
Прямой код целого числа получается по формуле:
7(
72 0 5 0 A, если A 7. 00,
[A] 4пр 0 = 7 *
72 010 5n-1 0- 5 0A, если A
79
где 10 - число 2 в двоичной системе счисления,
n - количество позиций в разрядной сетке.
Например, при n=8
A = 110111 --> [A] 4пр 0 = 00110111
A = -110111 --> [A] 4пр 0 = 10000000 - (-110111) = 10110111
В ЭВМ прямой код применяется только для представления поло-
жительных двоичных чисел. Для представления отрицательных чисел.
применяется либо дополнительный, либо обратный код, так как над
- 4 -
отрицательными числами в прямом коде неудобно выполнять арифмети-
ческие операции.
Формула для образования дополнительного кода 4 0дроби:
[A] 4доп 0 = 10 + A.
Формула для образования обратного кода 4 0дроби:
[A] 4обр 0 = 10 - 10 5-(n-1) 0 + A.
Например, при n = 8, для A = -0,1100001
[A] 4доп 0 = 10 + (-0,1100001) = 1,0011111
[A] 4обр 0 = 10-10 5-7 0+(-0,1100001) = 1,1111111-0,1100001 = 1,0011110.
Формула для образования дополнительного кода 4 0целого числа:
[A] 4доп 0 = 10 5n 0 + A.
Формула для образования обратного кода 4 0целого числа:
[A] 4обр 0 = 10 5n 0 - 1 + A.
Например, при n = 8, для A = -1100001
[A] 4доп 0 = 100000000 + (-1100001) = 10011111
[A] 4обр 0 = 100000000-1+(-1100001) = 11111111-1100001 = 10011110.
Таким образом, правила для образования дополнительного и об-
ратного кода состоят в следующем:
- для образования дополнительного кода отрицательного числа
необходимо в знаковом разряде поставить единицу, а все цифровые
разряды инвертировать (заменить 1 на 0, а 0 - на 1), после чего
прибавить 1 к младшему разряду;
- для образования обратного кода отрицательного числа необ-
ходимо в знаковом разряде поставить единицу, а все цифровые раз-
ряды инвертировать.
Примечание: при данных преобразованиях нужно учитывать раз-
мер разрядной сетки.
Прямой код можно получить из дополнительного и обратного по
тем же правилам, которые служат для нахождения дополнительного и
обратного кодов.
Замена вычитания двоичных чисел A 41 0- 4 0A 42 0 сложением с дополне-
ниями [A 41 0] 4пр 0+ 4 0[-A 42 0] 4доп 0 или [A 41 0] 4пр 0+ 4 0[-A 42 0] 4обр 0 позволяет опериро-
вать со знаковыми разрядами так же, как и с цифровыми. При этом
перенос из старшего знакового разряда, если он возникает, учиты-
вается по разному для обратного и дополнительного кодов:
- при использовании дополнительного кода единица переноса из
- 5 -
знакового разряда отбрасывается;
- при использовании обратного кода единица переноса из зна-
кового разряда прибавляется к младшему разряду суммы (осуществля-
ется так называемый циклический перенос).
Пример: складываем числа A 41 0=0,10010001 и A 42 0=-0,01100110
При использовании обратного кода получим:
[A 41 0] 4пр 0 = 0,10010001
+
[A 42 0] 4обр 0 = 1,10011001
-----------
10,00101010
L------- +1
-----------
Результат: 0,00101011
При использовании дополнительного кода получим:
[A 41 0] 4пр 0 = 0,10010001
+
[A 42 0] 4доп 0 = 1,10011010
-----------
Результат: 0,00101011
Если знаковый разряд результата равен нулю, то в получено
положительное число, которое представлено в прямом коде. Если в
знаковом разряде единица, то результат отрицательный и представ-
лен в обратном или дополнительном коде.
Для того, чтобы избежать ошибок при выполнении бинарных опе-
раций, перед переводом чисел в обратные и дополнительные коды не-
обходимо выравнивать количество разрядов прямого кода операндов.
При сложении чисел, меньших единицы, в машине быть получены
числа, по абсолютной величине большие единицы. Для обнаружения
переполнения разрядной сетки в ЭВМ применяются 2 модифицированные
прямой, обратный и дополнительный коды. В этих кодах знак кодиру-
ется двумя разрядами, причем знаку "плюс" соответствует комбина-
ция 00, а знаку "минус" - комбинация 11.
Правила сложения для модифицированных кодов те же, что и для
обычных. Единица переноса из старшего знакового разряда в модифи-
цированном дополнительном коде отбрасывается, а в модифицирован-
ном обратном коде передается в младший цифровой разряд.
Признаком переполнения служит появление в знаковом разряде
суммы комбинации 01 при сложении положительных чисел (положитель-
ное переполнение) или 10 при сложении отрицательных чисел (отри-
цательное переполнение). Старший знаковый разряд в этих случаях
- 6 -
содержит истинное значение знака суммы, а младший является стар-
шей значащей цифрой числа. Для коррекции переполнения число нужно
сдвинуть в разрядной сетке на один разряд вправо, а в освободив-
шийся старший знаковый разряд поместить цифру, равную новому зна-
чению младшего знакового разряда. После корректировки переполне-
ния мантиссы результата необходимо увеличить на единицу порядок
результата.
ПЕРВЫЙ СЕМЕСТР
ЛЕКЦИЯ N 3
2ОСНОВЫ МАШИННОЙ АРИФМЕТИКИ
2Формы представления чисел в ЭВМ 0
2(продолжение)
Система вещественных чисел, применяемая при ручных вычисле-
ниях, предполагается бесконечной и непрерывной, т.е. не существу-
ет никаких ограничений на диапазон используемых чисел и точность
их представления.
Однако в компьютерах реализация такой системы на аппаратном
уровне была бы нецелесообразной, хотя программно может быть реа-
лизована любая точность вычислений. Нецелесообразность аппаратной
реализации вычислений с произвольной точностью вызвана тем, что
такие вычисления требуют неоправданно большого расхода основных
машинных ресурсов: памяти и процессорного времени.
Во всех компьютерах размеры регистров и ячеек памяти фикси-
рованы, что ограничивает систему представления чисел. Ограничения
касаются как диапазона, так и точности представления чисел, т.е.
система машинных чисел оказывается конечной и дискретной.
В любой универсальной ЭВМ существует несколько различных
форматов представления как для чисел с фиксированной, так и для
чисел с плавающей запятой. На некоторые из форматов имеются меж-
дународные стандарты, и поэтому такие форматы являются общими для
ЭВМ, построенных различными фирмами на различной элементной базе.
Следует отметить, что нестандартные форматы обычно являются неяв-
но специализированными для определенных областей применения, при-
чем разработчики аппаратуры могут не указать в документации, для
чего был предназначен тот или иной формат.
С точки зрения программиста важно, какие из форматов данных
обрабатываются аппаратными средствами данной ЭВМ, а какие - толь-
ко программными средствами. Операции над данными любого формата,
который не поддерживается аппаратурой, выполняются очень медлен-
но. Любой формат данных, который превышает размер регистров про-
цессора, не пригоден для быстрых вычислений.
Для представления 2целых чисел 0 в ЭВМ обычно применяются 8-,
16-, 32- и 64-битовый стандартные форматы, причем интерпретация
чисел как знаковых или беззнаковых обычно возлагается на програм-
миста или на компиллятор с языка высокого уровня.
.
- 2 -
Для представления 2 чисел с плавающей запятой 0 также существует
несколько стандартных форматов, различающихся по точности, но
имеющих одинаковую структуру следующего вида:
n-1 n-2 0
----T---T---T-----T---T---T---T-----T---¬
¦ ¦ ¦ ¦ ... ¦ ¦ ¦ ¦ ... ¦ ¦
L---¦---+---+-----+---¦---+---+-----+----
¦ L--------T---------L--------T--------
¦ смещенный модуль
знак порядок мантиссы
мантиссы
Порядок p задается в так называемой смещенной форме: если
для задания порядка выделено k разрядов, то к истинному значению
порядка прибавляют смещение, равное (2 5k-1 0 - 1). Использование
смещенной формы позволяет производить операции над порядками, как
над беззнаковыми числами, что упрощает операции сравнения, сложе-
ния и вычитания порядков. Кроме того, использование смещенного
порядка упрощает операцию сравнения нормализованных чисел с пла-
вающей запятой, сводя ее к операции сравнения целых чисел.
Следует отметить, что вещественный формат с m-разрядной ман-
тиссой позволяет абсолютно точно представлять m-разрядные целые
числа, т.е. любое двоичное целое число, содержащее не более m
разрядов, может быть без искажений преобразовано в вещественный
формат.
2Форматы представления чисел в ПЭВМ IBM AT
Рассмотрим стандартные и нестандартные форматы, используемые
для представления чисел в ПЭВМ IBM AT.
В дальнейшем будем использовать на диаграммах следующие
обозначения:
S - знаковый разряд;
E - поле порядка;
M - поле мантиссы;
X - неиспользуемая область;
D - цифра упакованного десятичного целого числа, представ-
ленная в двоично-десятичном коде.
Примечание: основной процессор эффективен только при опера-
циях с целыми числами, разрядность которых не превышает разряд-
ности его внутренних регистров; в остальных случаях более эффек-
тивен математический сопроцессор.
.
- 3 -
1Форматы представления 0 1двоичных целых чисел
1) 8-разрядное целое число без знака (поддерживается всеми
процессорами серии 80x86)
7 0
----------------¬
¦ ¦
L----------------
2) 7-разрядное целое число со знаком (поддерживается всеми
процессорами серии 80x86)
7 6 0
--T-------------¬
¦S¦ ¦
L-+--------------
3) 16-разрядное целое число без знака (поддерживается всеми
процессорами серии 80x86)
15 0
--------------------------------¬
¦ ¦
L---------------+----------------
4) Word Integer (целое слово) - 15-разрядное целое число со
знаком (поддерживается всеми процессорами серии 80x86 и математи-
ческим сопроцессором)
15 0
--T-----------------------------¬
¦S¦ ¦
L-+-------------+----------------
5) 32-разрядное целое число без знака (поддерживается всеми
процессорами серии 80x86, но операции с этим форматом выполняются
эффективно только 32-разрядными микропроцессорами, т.е. начиная с
i386SX)
31 0
----------------------------------------------------------------¬
¦ ¦
L---------------+---------------+---------------+----------------
6) Short Integer (короткое целое) - 31-разрядное целое число
со знаком (поддерживается всеми процессорами серии 80x86 и мате-
матическим сопроцессором, но операции с этим форматом выполняются
эффективно только 32-разрядными микропроцессорами)
.
- 4 -
31 0
--T-------------------------------------------------------------¬
¦S¦ ¦
L-+-------------+---------------+---------------+----------------
7) 64-разрядное целое число без знака (частично поддержива-
ется 32-разрядными микропроцессорами)
64 0
----------------------------------------------------------------¬
¦ ¦
L-------+-------+-------+-------+-------+-------+-------+--------
8) Long Integer (длинное целое) - 63-разрядное целое число
со знаком (поддерживается математическим сопроцессором и частично
поддерживается 32-разрядными микропроцессорами)
64 0
--T-------------------------------------------------------------¬
¦S¦ ¦
L-+-----+-------+-------+-------+-------+-------+-------+--------
1Форматы представления 0 1десятичных целых чисел
1) Неупакованное 1-разрядное десятичное целое число без зна-
ка в двоично-десятичном коде (поддерживается всеми процессорами
серии 80x86)
7 4 3 0
--------T-------¬
¦0 0 0 0¦ D ¦
L-------+--------
2) 1-разрядное десятичное целое число без знака в коде ASCII
(поддерживается всеми процессорами серии 80x86)
7 4 3 0
--------T-------¬
¦0 0 1 1¦ D ¦
L-------+--------
3) Packed Decimal - упакованное 2-разрядное десятичное целое
без знака (поддерживается всеми процессорами серии 80x86)
7 4 3 0
--------T-------¬
¦ D 41 0 ¦ D 40 0 ¦
L-------+--------
4) Packed Binary Coded Decimal - упакованное 18-разрядное
десятичное целое число со знаком (поддерживается математическим
сопроцессором)
- 5 -
79 0
--T----T-----------------------------------------------------¬
¦S¦ X ¦D 417 0D 416 0 ... D 41 0 D 40 0¦
L-+----+-----+-----+-----+-----+-----+-----+-----+-----+------
1Форматы представления вещественных чисел
1) Single Format (обычный формат) 1 0или 1 0Short Real (короткое
вещественное) - короткое вещественное нормализованное число со
знаком, 8-разрядным смещенным порядком и 24-разрядной мантиссой
(так как старший бит мантиссы нормализованного числа всегда равен
1, то он не хранится в памяти, и размер поля, выделенного для
хранения мантиссы, составляет только 23 разряда).
31 30 23 22 0
--T---------------T---------------------------------------------¬
¦S¦ E ¦ M ¦
L-+-------------+-+-------------+---------------+----------------
2) Double Format(двойной формат) или Long Real (длинное ве-
щественное) - длинное вещественное нормализованное число со
знаком, 11-разрядным смещенным порядком и 53-разрядной мантиссой
(так как старший бит мантиссы нормализованного числа всегда равен
1, то он не хранится в памяти, и размер поля, выделенного для
хранения мантиссы, составляет только 52 разряда).
63 62 52 51 0
--T---------T---------------------------------------------------¬
¦S¦ E ¦ M ¦
L-+-----+---+---+-------+-------+-------+-------+-------+--------
3) Extended Format (расширенный формат) или 1 0Single Extended
(обычный расширенный формат) - вещественное число в расширенном
формате со знаком, 15-разрядным смещенным порядком и 64-разрядной
мантиссой. Этот формат позволяет хранить ненормализованные числа
и соответствует стандарту IEEE 754.
79 78 64 63 0
--T---------T-----------------------------------------------¬
¦S¦ E ¦ M ¦
L-+---+-----+-----+-----+-----+-----+-----+-----+-----+------
ПЕРВЫЙ СЕМЕСТР
ЛЕКЦИЯ N 4
2ТЕОРЕТИЧЕСКИЕ ОСНОВЫ ПОСТРОЕНИЯ УЗЛОВ ЭВМ
2Физические формы представления информации
Вся информация в ЭВМ кодируется совокупностью цифр. В свою
очередь цифры отображаются квантованными по двум уровням сигнала-
ми.
Следует отметить, что в цифровых устройствах сигналы изменя-
ются не непрерывно, а в дискретные моменты времени, обозначаемые
целыми числами (t = 0, 1, ... n). Временной интервал между сосед-
ними моментами дискретного времени называется 2 тактом 0. Эти интер-
валы являются одинаковыми для синхронных устройств и неодинаковы-
ми для асинхронных устройств.
На физическом уровне сигналы могут быть представлены одним
из трех основных способов: потенциальным, импульсным или динами-
ческим.
При 2потенциальном 0 способе 0 соответствует низкий уровень
напряжения, а 1 - высокий. Потенциальный сигнал характеризуется
амплитудами низкого (U 40 0) и высокого (U 41 0) уровней напряжения, а
также временами нарастания и спада сигнала, которые именуются пе-
редним (t 4п 0) и задним (t 4з 0) фронтами соответственно.
При 2импульсном 0 способе 0 и 1 соответствуют импульсы различ-
ной полярности, либо 0 соответствует отсутствие, а 1 - наличие
импульса. Импульсный сигнал характеризуется амплитудой импульса
U 4m 0, шириной (продолжительностью импульса по основанию) t 4и 0, и пе-
редним t 4п 0 и задним t 4з 0 фронтами импульса. В идеальном случае им-
пульсные сигналы должны появляться в тактовые моменты. В действи-
тельности имеет место запаздывание импульсного сигнала относи-
тельно тактового момента на время 7 t 0.
При 2 динамическом 0 способе представления информации двум воз-
можным значениям переменной соответствует наличие либо отсутствие
серии импульсов.
В электронных схемах и устройствах, входящих в состав ЭВМ,
применяется потенциальный способ представления информации, а для
передачи информации между ЭВМ, а также при работе с магнитными
носителями информации применяются импульсный и динамический спо-
собы.
2Математические модели схем ЭВМ
Наиболее общей моделью любой схемы, узла или устройства ЭВМ
является многополюсный черный ящик с 2l 0 входами и 2m 0 выходами. На
входы модели поступают, а на выходах появляются сигналы, кванто-
ванные по двум уровням.
.
- 2 -
-----------¬
x 41 0 -----+ +----- y 41
x 42 0 -----+ +----- y 42
. ¦ Черный ¦ .
. ¦ ящик ¦ .
. ¦ ¦ .
x 4l 0 -----+ +----- y 4m
L-----------
где x 4i 0 (i = 1, 2, ..., l) - входные сигналы,
y 4j 0 (j = 1, 2, ..., m) - выходные сигналы.
Множество значений, которые может принимать переменная x 4i 0,
называют 2 алфавитом 0 переменной x 4i 0. В современных ЭВМ алфавит вход-
ных и выходных сигналов состоит из двух букв: 0 и 1.
На входы модели поступают в каждый тактовый момент упорядо-
ченные наборы букв, называемые 2 словами 0. Множество всех допустимых
наборов слов называется 2входным алфавитом 0 X данной схемы. Анало-
гично множество всех допустимых комбинаций, образуемых выходными
сигналами, называется 2выходным алфавитом 0 Y.
Математические модели отражают зависимость между входными и
выходными переменными схемы посредством системы уравнений:
y 4j 0(t) = f{x 41 0(t),x 42 0(t)...,x 4l 0(t), q 41 0(t),q 42 0(t),,...,q 4s 0(t)} (I)
где j = 1,2,...,m, а переменные q 41 0,q 42 0,...,q 4s 0 отражают внутренние
состояния схемы.
Если переменные y 4i 0 не зависят от внутреннего состояния схе-
мы, то одинаковым наборам входных переменных соответствует один и
тот же набор выходных переменных. Такие схемы называются 2комбина-
2ционными 0.
При этом система уравнений может быть записана в виде:
y 4j 0(t) = f{x 41 0(t),x 42 0(t)...,x 4l 0(t)}, где j = 1,2,...,m. (II)
Функции такого вида могут принимать только конечное число
значений, и зависят от аргументов, также принимающих конечное
число значений. Такие функции называются 2 переключательными 0.
В дальнейшем мы будем рассматривать переключательные функ-
ции, которые могут принимать только два значения - 0 и 1, и аргу-
менты которых также могут принимать только одно из этих двух зна-
чений. Такие переключательные функции получили название 2 булевых
2функций 0.
Если выходные переменные y 4i 0(t) зависят не только от входных
переменных, но и от внутреннего состояния схемы, то для полного
ее описания необходимо указать еще одну систему уравнений:
- 3 -
q 4n 0(t+1) = 7f 0{x 41 0(t),x 42 0(t)...,x 4l 0(t), q 41 0(t),q 42 0(t),,...,q 4s 0(t)}, (III)
где n = 1,2,...,s.
Эта система отражает зависимость внутреннего состояния схемы
в (t+1) такте от ее состояния и входных сигналов в такте t.
Схемы, описываемые уравнениями I и III, получили название
2цифровых автоматов 0.
Для задания цифрового автомата должны быть указаны:
Следующая страница
|