Двойное оплодотворение у цветковых растений: Оплодотворение - это процесс слияния мужской и женской половых клеток с образованием зиготы...
Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...
Топ:
Определение места расположения распределительного центра: Фирма реализует продукцию на рынках сбыта и имеет постоянных поставщиков в разных регионах. Увеличение объема продаж...
Методика измерений сопротивления растеканию тока анодного заземления: Анодный заземлитель (анод) – проводник, погруженный в электролитическую среду (грунт, раствор электролита) и подключенный к положительному...
Интересное:
Уполаживание и террасирование склонов: Если глубина оврага более 5 м необходимо устройство берм. Варианты использования оврагов для градостроительных целей...
Национальное богатство страны и его составляющие: для оценки элементов национального богатства используются...
Отражение на счетах бухгалтерского учета процесса приобретения: Процесс заготовления представляет систему экономических событий, включающих приобретение организацией у поставщиков сырья...
Дисциплины:
2018-01-14 | 572 |
5.00
из
|
Заказать работу |
|
|
Другой способ представления целых чисел — дополнительный код. Диапазон значений величин зависит от количества бит памяти, отведенных для их хранения. Например, величины типа Integer (все названия типов данных здесь и ниже представлены в том виде, в каком они приняты в языке программирования Turbo Pascal. В других языках такие типы данных тоже есть, но могут иметь другие названия) лежат в диапазоне от -32768 (-215) до 32767 (215 - 1) и для их хранения отводится 2 байта (16 бит); типа LongInt — в диапазоне от -231 до 231 - 1 и размещаются в 4 байтах (32 бита); типа Word — в диапазоне от 0 до 65535 (216 - 1) (используется 2 байта) и т.д.
Как видно из примеров, данные могут быть интерпретированы как числа со знаком, так и без знака. В случае представления величины со знаком самый левый (старший) разряд указывает на положительное число, если содержит нуль, и на отрицательное, если — единицу.
Вообще, разряды нумеруются справа налево, начиная с 0. Ниже показана нумерация бит в двухбайтовом машинном слове.
Дополнительный код положительного числа совпадает с его прямым кодом. Прямой код целого числа может быть получен следующим образом: число переводится в двоичную систему счисления, а затем его двоичную запись слева дополняют таким количеством незначащих нулей, сколько требует тип данных, к которому принадлежит число.
Например, если число 37(10) = 100101(2) объявлено величиной типа Integer (шестнадцатибитовое со знаком), то его прямым кодом будет 0000000000100101, а если величиной типа LongInt (тридцатидвухбитовое со знаком), то его прямой код будет 00000000000000000000000000100101. Для более компактной записи чаще используют шестнадцатеричное представление кода. Полученные коды можно переписать соответственно как 0025(16) и 00000025(16).
|
Дополнительный код целого отрицательного числа может быть получен по следующему алгоритму:
1. записать прямой код модуля числа;
2. инвертировать его (заменить единицы нулями, нули — единицами);
3. прибавить к инверсному коду единицу.
Например, запишем дополнительный код числа -37, интерпретируя его как величину типа LongInt (тридцатидвухбитовое со знаком):
1. прямой код числа 37 есть 00000000000000000000000000100101;
2. инверсный код 11111111111111111111111111011010;
3. дополнительный код 11111111111111111111111111011011 или FFFFFFDB(16).
бным). Под точкой здесь подразумевается знак-разделитель целой и дробной части числа.
Билет№12
1) ПРЕДСТАВЛЕНИЕ ЦЕЛЫХ ЧИСЕЛ
Множество целых чисел, представленных в памяти ЭВМ, ограничено. Диапазон значений зависит от размера ячеек памяти, используемых для их хранения.
Для целых чисел существуют два представления:
-беззнаковое;
-со знаком.
В К-разрядной ячейке может храниться 2к различных значений целых чисел.
Диапазон значений целых беззнаковых чисел (только положительные):
от 0 до 2к - 1
для 16-разрядной ячейки от 0 до 65535
для 8-разрядной ячейки от 0 до 255
Диапазон значений целых чисел со знаком (и отрицательные, и положительные в равном количестве):
от -2к-1 до 2к-1-1
для 16-разрядной ячейки от -32768 до 32767
для 8-разрядной ячейки от -128 до 127
Чтобы получить внутреннее представление целого положительного числа N, хранящегося в К-разрядной ячейке, необходимо:
1. перевести число N в двоичную систему счисления;
2. полученный результат дополнить слева незначащими нулями до К разрядов.
ПРИМЕР
Получить внутреннее представление целого числа 1607 в 2-х байтовой ячейке.
Решение:
N=1607=110010001112.
Внутреннее представление этого числа будет: 0000 0110 0100 0111. Шестнадцатеричная форма внутреннего представления числа: 0647.
Алгоритм представления целого положительного числа в компьютере в двух байтовом формате
|
1. Число переводится в двоичную систему счисления;
2. Результат дополняется нулями слева в пределах выбранного формата;
3. Последний разряд является знаковым, в положительном числе он равен 0, а в отрицатель6ном 1.
Пример: представить десятичное число – 18 в двухбайтовом формате.
Переведем – 18 в двоичную систему счисления 18 2
18 = 10010
Запишем в старший разряд знак числа
Билет №13
1) Целые отрицательные числа.
Разберемся, как представляются отрицательные числа. Казалось бы, для этого достаточно заменить 0 на 1 в старшем (31-м) разряде ячейки памяти. Однако реально это делается несколько сложнее. Для представления отрицательных целых чисел используется дополнительный код.
Дополнительным кодом двоичного числа X в N-разрядной ячейке является число, дополняющее его до значения 2.
Получить дополнительный код можно следующим путем:
1. записать внутреннее представление положительного числа X;
2. записать обратный код этого числа заменой во всех разрядах 0 на 1 и 1 на 0;
3. к полученному числу прибавить 1.
Определим по этим правилам внутреннее представление числа -562810 в 32-разрядной ячейке.
1.
2.
3.
Шестнадцатеричная форма результата:
FF FF ЕА 04.
Старший разряд в представлении любого отрицательного числа равен 1. Следовательно, он указывает на знак числа и поэтому называется знаковым разрядом.
Почему отрицательные числа представляются в дополнительном коде? Дело в том, что в этом случае операция вычитания двух чисел сводится к сложению с дополнительным кодом вычитаемого, и процессору достаточно уметь лишь складывать числа. В самом деле:
А - В = А + (-В).
Если значение (-В) будет иметь форму дополнительного кода, то в памяти ЭВМ получится правильный результат.
Проверим, действительно ли в ячейке памяти получится О в результате сложения числа 5628 с числом -5628 в форме дополнительного кода.
00000000 00000000 00010101 11111100 + 11111111 11111111 11101010 000000100 =
1 00000000 00000000 00000000 00000000
Что и требовалось доказать! Единица в старшем разряде, получаемая при сложении, выходит за границу разрядной сетки машинного слова и исчезает.
Двоичное 32-разрядное число 231 является «отрицательным самому себе». Получим его дополнительный код:
Определим по этим правилам внутреннее представление числа -562810 в 32-разрядной ячейке.
|
1.
2.
3.
Билет№14
1) Представление вещественного числа в компьютер
|
|
Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого...
Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьшения длины пробега и улучшения маневрирования ВС при...
Особенности сооружения опор в сложных условиях: Сооружение ВЛ в районах с суровыми климатическими и тяжелыми геологическими условиями...
Папиллярные узоры пальцев рук - маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!