Переполнение разрядной сетки
Переполнением разрядной сетки называется ситуация, при которой результат требует на один разряд больше для своего представления, чем исходные операнды и результат не умещается в разрядную сетку.
В ЭВМ такая ситуация отслеживается блоком прерывания и в случае переполнения программа снимается с обработки.
Признаки переполнения(способы определения переполнения):
1) По наличию и отсутствию переноса в знаковый и из знакового разряда:
переполнение возникает в том случае, если возникает единица переноса в знаковый разряд и отсутствует единица переноса из знакового разряда. Либо имеется единица переноса из знакового
разряда и отсутствует единица переноса в знаковый разряд.
Переполнение отсутствует, если существуют единицы переноса и в знаковый разряд и из знакового разряда или обе единицы переноса отсутствуют.
Пример:
А=5, В=4
0.101 +5 прямой код 0.100 +4 прямой код
1.010 -5 обратный код 1.011 -4 обратный код
А+В
1
|
|
0.100 +4 прямой код
1.001 переполнение!
Имеется один перенос в знаковый разряд, перенос из знакового разряда отсутствует.
-А-В
1
|
1.011 -4 обратный код
0.101 переполнение!
Имеется один перенос из знакового разряда, перенос в знаковый разряд отсутствует.
2) Модифицированное кодирование:
При модифицированном кодировании под знак числа отводится два или более разрядов.
Комбинация 00 соответствует положительному числу.11 – отрицательное число.
Пример:
А+В
|
00.100 +4 прямой модифицированный код
01.001 переполнение!
Комбинация 01 в знаковом разряде соответствует переполнению разрядной сетки.
(-А)+(-В)
|
11.011 -4 обратный модифицированный код
10.101 переполнение!
Комбинация 10 в знаковом разряде соответствует переполнению разрядной сетки.
Пример для дополнительного модифицированного кода:
А-В
|
11.100 -4 дополнительный модифицированный код
00.001 +1 прямой код
В знаковых разрядах результата комбинация 00.Из этого следует, что переполнение разрядной сетки отсутствует, результат положительный .
В-А
|
11.011 -5 дополнительный модифицированный код
11.111
В знаковых разрядах результата комбинация 11.Из этого следует, что переполнение разрядной сетки отсутствует и результат отрицательный ,представлен в дополнительном коде.
|
1
11.001 -1 прямой код
(-А)+(-В)
|
11.100 - 4 дополнительный модифицированный код
10.111 переполнение!
В знаковых разрядах результата комбинация 10,что соответствует переполнению разрядной сетки.
Формы представления чисел в ЭВМ.
Любая информация(числа, команды и т.д.) представляются в ЭВМ в виде двоичных кодов фиксированной или переменной длины. Отдельные элементы двоичного кода, имеющие значение 0 или 1, называют разрядами или битами. В ЭВМ слова часто разбивают на части, называемые слогами или байтами. В современных ЭВМ широко используется байт, содержащий 8 бит(разрядов).
Двоичный разряд представляется в ЭВМ некоторым техническим устройством, например триггером, двум различным состояниям которого приписывают значения 0 и 1. Набор соответствующего количества таких устройств служит для представления многоразрядного двоичного числа(слова).
В ЭВМ применяют две формы представления чисел:
-с фиксированной точкой
-с плавающей точкой.