Перевод чисел из одной системы счисления в другую.
Правило перевода целых чисел из десятичной системы счисления в систему с основанием q:
1. Последовательно выполнять деление исходного числа и получаемых частных на q до тех пор, пока не получим частное, меньшее делителя.
2. Полученные при таком делении остатки – цифры числа в системе счисления q – записать в обратном порядке (снизу вверх).
Перевод чисел из любой системы счисления в десятичную.
3. Правило: Для того чтобы число из любой системы счисления перевести в десятичную систему счисления, необходимо его представить в развернутом виде и произвести вычисления.
Перевод чисел из двоичной системы счисления в восьмеричную и шестнадцатеричную системы счисления (Перевод целых чисел).
Правило: Чтобы перевести целое двоичное число в восьмеричную (8=23) систему счисления необходимо:
- разбить данное число справа налево на группы по 3 цифры в каждой;
- рассмотреть каждую группу и записать ее соответствующей цифрой восьмеричной системы счисления.
Правило: Чтобы перевести целое двоичное число в шестнадцатеричную (16=24) систему счисления необходимо:
1. разбить данное число справа налево на группы по 4 цифры в каждой;
2. рассмотреть каждую группу и записать ее соответствующей цифрой шестнадцатеричной системы счисления.
Перевод чисел из восьмеричной и шестнадцатеричной систем счисления в двоичную систему счисления.
3. Правило: Для того, чтобы восьмеричное (шестнадцатеричное) число перевести в двоичную систему счисления, необходимо каждую цифру этого числа заменить соответствующим числом, состоящим из 3 (4) цифр двоичной системы счисления.
|
|
3. Арифметика ЭВМ. Представление чисел в форме с фиксированной точкой.
· Отличие машинной арифметики от арифметики обычной состоит в том, что разрядность чисел в машине конечна.
· Ограниченность чисел обусловлена ограниченностью разрядной сетки (разрядности процессора).
· Бесконечная числовая ось в машине отображается конечным множеством точек. N = 2n(n – разрядность)
Информация в памяти ЭВМ хранится и обрабатывается в двоичной системе счисления. Неделимой наименьшей единицей хранения информации является один бит, т.е.. двоичный разряд, который может принимать значения 0 или 1.
Группа из 8 битов называется байтом. Вся оперативная память состоит из байтов, которые нумеруются с 0. Последовательность в 1024 байта называется 1килобайт (1 кбайт = 1024 байта); 1 мегабайт = 1024 Кбайт,
1 гигабайт = 1024 Мбайт, 1 терабайт = 1024 Гбайт,
1 петабайт = 1024 Тбайт, 1экзабайт = 1024 Пбайта.
Адресом любого данного считается адрес (номер) самого первого байта поля памяти, выделенной для его хранения.
Форма записи данных в памяти ЭВМ называется внутренним представлением данных. В ЭВМ применяют две формы представления чисел: с фиксированной и с плавающей точкой.
|
|
Хранение чисел с фиксированной точкой
Для хранения информации в оперативной памяти служит ячейка. Существуют ЭВМ, в которых ячейка имеет постоянную длину, в ПК – переменную. Наименьшая длина – 1 байт. Есть ячейки в 2, 4, 6, 8, 10 байт. Ячейка в 2 байта называется словом, в 4 – двойным словом, в 1 байт – полусловом. Будем считать, что байты размещаются так(k=2, 4, 6, 8, 10):
При представлении чисел с фиксированной точкой местонахождение точки фиксируется в конкретном месте ячейки относительно разряда числа.
Каждый бит имеет свой вес в байте. Если в байте точка зафиксирована справа и используется беззнаковая форма хранения целых положительных чисел, то биты имеют вес в соответствии со схемой:
Для представления целых чисел используют два варианта: со знаком и без знака. В первом случае выделяют «знаковый» разряд (обычно крайний слева) и сохраняют там 0 («+») или 1 («-»)
Если местонахождение точки фиксируется перед старшим разрядом, то вес разрядов в байте будет другим:
В этом формате могут быть числа – правильные дроби.
Для представления целых числе в форме с фиксированной точкой со знаком в ЭВМ применяют прямой, обратный и дополнительный коды. Идея такова: код трактуется как число без знака, а диапазон чисел без знака разбивается на два поддиапазона. Один из них дает положительные числа, а другой – отрицательные. Разбиение выполняется таким образом, чтобы принадлежность к диапазону определялась максимально просто.
|
|
Очень удобно формировать коды так, чтобы значение старшего разряда показывало на знак числа
Формат с фиксированной запятой:
• используется ПК или ДК (чаще),
• числа расположены равномерно по числовой оси,
• дискретность (расстояние между соседними числами) постоянная на всем диапазоне.
4. Сложение в формате с фиксированной точкой. Переполнение.
Таблица сложения для двоичной арифметики:
Сложение осуществляется довольно просто, но при сложении больших чисел может возникнуть переполнение разрядной сетки и компьютеру важно его обнаружить и предупредить.
Обнаружение переполнения разрядной сетки при сложении может производиться несколькими способами.
Самый простой способ – использование модифицированного кода (с двумя знаковыми разрядами).
Старший знаковый разряд даже при переполнении сохраняет информацию о знаке результата («Разряд знака»).
|
|
Младший – «Разряд переполнения». Комбинация знаков при «положительном» переполнении – 01, при «отрицательном» – 10.
Недостаток способа модифицированного кода — расширение разрядной сетки на один разряд.
Второй способ обнаружения переполнения - сравнение переносов в знаковый разряд и из знакового разряда. Переполнение - при несовпадении этих переносов. Фактически здесь тоже «задействован» модифицированный дополнительный код.
Случай А. Неотрицательные операнды.
Правило сравнения переносов дает значение признака переполнения:
φр = 0 ÅX = X (переполнение при X = 1).
Слева от штриховой черты показаны значения воображаемого модифицированного дополнительного кода. Правило этого способа дает такое же значение признака переполнения:
φм = 0 ÅX = X
Третий способ - сравнение знаков. Реализуется программно (микропрограммно). Сначала проверяется, имеют ли операнды одинаковые знаки. И, если имеют, совпадает ли с этими знаками знак результата. Переполнение соответствует несовпадению (рис. 4).
5. Операция вычитания с фиксированной точкой. Дополнительный код числа.
Таблица вычитания
Очень часто в вычислениях должны использоваться не только положительные, но и отрицательные числа.
Число со знаком в вычислительной технике представляется путем представления старшего разряда числа в качестве знакового. Принято считать, что 0 в знаковом разряде означает знак «плюс» для данного числа, а 1 – знак «минус».
Выполнение арифметических операций над числами с разными знаками представляется для аппаратной части довольно сложной процедурой. В этом случае нужно определить большее по модулю число, произвести вычитание и присвоить разности знак большего по модулю числа.
Применение дополнительного кода позволяет выполнить операцию алгебраического суммирования и вычитания на обычном сумматоре.При этом не требуется определения модуля и знака числа.
Прямой код представляет собой одинаковое представление значимой части числа для положительных и отрицательных чисел и отличается только знаковым битом. В прямом коде число 0 имеет два представления «+0» и «–0».
Обратный коддля положительных чисел имеет тот же вид, что и прямой код, а для отрицательных чисел образуется из прямого кода положительного числа путем инвертирования всех значащих разрядов прямого кода. В обратном коде число 0 также имеет два представления «+0» и «–0».
Дополнительный код для положительных чисел имеет тот же вид, что и прямой код, а для отрицательных чисел образуется путем прибавления 1 к обратному коду. Добавление 1 к обратному коду числа 0 дает единое представление числа 0 в дополнительном коде. Однако это приводит к асимметрии диапазонов представления чисел относительно нуля. Так, в восьмиразрядном представлении диапазон изменения чисел с учетом знака.
-128 <= x <= 127.
Таблица прямого, обратного и дополнительного кода 4-битных чисел.
Дата добавления: 2018-06-01; просмотров: 467; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!