КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Кодирование и формы представления числовой информации в ЭВМ
Любая информация (числа, команды, записи и т. п.) представляется в ЭВМ в виде двоичных кодов фиксированной или переменной длины. Отдельные элементы двоичного кода, имеющие значение 0 или 1, называют разрядами или битами. Двоичный код состоящий из 8 разрядов носит название байта. Для записи чисел также используют 32-разрядный формат (машинное слово), 16-разрядный формат (полуслово) и 64-разрядный формат (двойное слово). В компьютере используются следующие формы представления числовых данных: – числа с фиксированной запятой (точкой); числа с плавающей запятой (точкой). Представление чисел в форме с фиксированной точкой получило название естественной формы числа, представление с плавающей точкой – нормальной (нормализованной) формой числа. В естественной форме представляются целые числа, в нормализованной форме – вещественные (целые и дробные). При представлении числа в форме с фиксированной точкой указывается знак числа и модуль числа в q – ичном коде. Число с плавающей точкой изображается в байтах памяти в виде мантиссы и порядка (основание системы в соответствующей степени) В целях упрощения выполнения арифметических операций применяют специальные коды для представления чисел. Использование кодов позволяет свести операцию вычитания чисел к арифметическому сложению кодов этих чисел. Основные машинные коды чисел: прямой, обратный и дополнительный. Прямой код используется для представления отрицательных чисел в запоминающем устройстве ЭВМ, а также при умножении и делении. Обратный и дополнительный коды используются для замены операции вычитания операцией сложения, что упрощает устройство арифметического блока ЭВМ.
К машинным кодам выдвигаются следующие требования: – разряды числа в коде жестко связаны с определенной разрядной сеткой (байт, полуслово, слово, двойное слово); – для записи кода знака числа в разрядной сетке отводится фиксированный, строго определенный разряд (обычно старший). Значение знакового разряда для положительных чисел равно 0, а для отрицательных чисел 1. Например, если за основу представления кода взят один байт, то для представления числа будет отведено 7 разрядов (с 0-го по 6-ой), а для записи кода знака один разряд (7-ой). Для удобства записи машинных кодов условимся отделять знаковый разряд от цифровых запятой. Если количество разрядов кода в задании не указано будем предполагать, что под запись кода выделен один байт. Код числа в форме с фиксированной точкой, состоящий из кода знака и двоичного кода его модуля, называется прямым кодом двоичного числа. Этот код строится путем перевода десятичного числа в двоичную СС и записи двоичного кода в разрядную сетку. Знак числа записывается в старшем разряде сетки, а все пустые разряды сетки между числом и знаковым разрядом заполняются нолями. Если число положительное его обратный и дополнительный коды совпадают с прямым кодом этого числа. Обратный код отрицательного числа получается путем инвертирования (замены 1 на 0, 0 на 1) всех разрядов прямого кода этого числа за исключением знакового. Дополнительный код отрицательного числа получается путем прибавления единицы к младшему разряду обратного кода Пример. Построить машинные коды числа 1710. Для построения прямого кода: – переведите исходное число в двоичную СС. 1710 = 100012; – занесите число в разрядную сетку. Т.к. разрядность сетки не было указана, работаем с байтом; – в старший разряд занесите знак числа; – пустые разряды сетки заполняем нолями.
[17]пр = 0, 0010001.Т.к. число 17 положительное: [17] пр = [17] обр = [17] доп = 0, 0010001. Пример. Построить машинные коды числа -1710. Для построения прямого кода: – переведите исходное число в двоичную СС. -1710 = -100012; – занесите число в разрядную сетку. Т.к. разрядность сетки не было указана, работаем с байтом; – в старший разряд занесите знак числа; – пустые разряды сетки заполняем нолями. [-17]пр = 1, 0010001. Т.к. число -17 отрицательное строим отрицательный и дополнительный коды этого числа: [-17] обр = 1, 1101110. 1, 1101110 1 [-17] доп = 1, 1101111 Особенности сложения целых чисел в дополнительном коде – числа в ЭВМ складываются в дополнительных кодах, соответственно и результат сложения является дополнительным кодом числа. Если результат арифметических действий является кодом отрицательного числа, необходимо преобразовать его в прямой код; – знаковые разряды слагаемых участвуют в сложении и формируют знак результата; – возникающая единица переноса в знаковом разряде отбрасывается; Пример. Сложить двоичные числа X и Y в дополнительном коде: а) X= 111, Y= -11;
б) X= -101,Y= -11;
Так как сумма является кодом отрицательного числа (знак 1), то необходимо перевести результаты в прямой код: – из дополнительного 1,1110101 в обратный вычитаем единицу из младшего разряда (X+Y)обр = 1,1110100; – обратного в прямой код производим инверсию разрядов за исключением знакового (X+Y)обр=1,1110100 (X+Y)пр=1,0001011. Таким образом, X+Y= -1011 и полученный результат совпадает с обычной записью. Задание 3
Дата добавления: 2014-12-27; Просмотров: 534; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |