4инф. Арифметические основы ЭВМ.
Система счисления – это способ представления числа, посредством определенного набора символов.
Существуют позиционные и непозиционные системы счисления.
В непозиционных с/с вес цифры не зависит от ее позиции в записи числа. Римская форма чисел:
I V X L C D M
1 5 10 50 100 500 1000
Остальные числа получаются как результат сложения или вычитания основных.
VL(45) CL1(151)
В позиционных с/с вес каждой цифры изменяется в зависимости от ее положения (позиции) в последовательности цифр, изображающих число. Например, арабская форма чисел
Любая позиционная с/с характеризуется своими базисом и основанием.
Базис - совокупность различных знаков или символов, используемых в позиционной с/с для записи чисел.
Основание - это количество различных знаков или символов, используемых для изображения цифр в данной системе.
За основание можно принять любое число - два, три, четыре и т.д. Следовательно, возможно бесчисленное множество позиционных систем счисления: двоичная, троичная, четверичная и т.д.
Система счисления |
Основание |
Базис |
2с/с |
2 |
0,1 |
5с/с |
5 |
0,1,2,3,4 |
8с/с |
8 |
0,1,2,3,4,5,6,7 |
10с/с |
10 |
0,1,2,3,4,5,6,7,8,9 |
16с/с |
16 |
0-9,A,B,C,D,E,F |
Например,
1011,12=1*23+0*22+1*21+1*20+1*2-1
276,528=2*82+7*81+6*80+5*8-1+2*8-2
Для общения с ЭВМ используются сист счисления:
- двоичная (0,1)
- восьмиричная (0,1,2,3,4,5,6,7)
- шестнадцатиричная (0-9,A,B,C,D,E,F)
Использование 2 с/с в ЭВМ объясняется рядом причин:
-для ее реализации нужны технические элементы с двумя возможными состояниями (есть ток-нет тока, намагничен-ненамагничен и т.п.);
-представление информации посредством двух состояний надежно и помехоустойчиво;
двоичная арифметика значительно проще десятичной;
-двоичные таблицы сложения и умножения предельно просты.
Почему используются 8 с/с и 16 с/с?
Двоичная система, удобная для ЭВМ, для человека неудобна из-за громоздкости и непривычной записи.
Перевод чисел из 10 с/с в 2 с/с и наоборот выполняет машина. Однако, чтобы профессионально использовать ЭВМ, следует научиться понимать слово машины. Для этого и разработаны 8 с/с и 16 с/с.
Перевод чисел из 8 с/с и 16 с/с в 2 с/с: нужно каждую цифру заменить эквивалентной ей двоичной триадой (тройкой цифр) или тетрадой (четверкой цифр):
Перевод чисел из 10 с/с в 2с/с, 8 с/с, 16 с/с (Р-ую с/с).
Перевод целых чисел:
-Исходное число разделить на основание новой с/с (Р). Остаток от деления записать в новой с/с. Это младшая цифра искомого числа.
-Если частное от деления равно 0, то искомое число получено
-Если частное не равно 0, то разделить его на Р. Остаток от деления записать в новой с/с. Это предыдущая цифра искомого числа.
-Число с основанием Р записывается как последовательность остатков от деления в обратном порядке, начиная с последнего.
Выполнить перевод из 10 в 2 с.с числа 19,847
(19,847)10=(10011,1101…)2
Перевод из 2 в 10 с.с по форме кодирующего алгоритма
(10011,1101)2=1*24+0*23+0*22+1*21+1*20+1*2-1+1*2-2+0*2-3+1*2-4=….=(19,8125)10
Поразрядные операции- операции, которые осуществляются над одноименными разрядами чисел независимо от соседних разрядов.
Поразрядное дополнение – получение инверсного кода числа.
Поразрядное сложение - заключается в сложении одноименных разрядов чисел по модулю 2 в соответствии с правилом
Правила выполнения арифметических действий над двоичными числами задаются таблицами сложения, вычитания и умножения.
сложение |
Вычитание |
умножение |
0+0=0 |
0-0=0 |
0*0=0 |
0+1=1 |
0-1=1 |
0*1=0 |
1+0=1 |
1-1=0 |
1*0=0 |
1+1=10 |
10-1=1 |
1*1=1 |
Например:
Правило выполнения операции сложения одинаково для всех систем счисления: если сумма складываемых цифр больше или равна основанию системы счисления, происходит перенос единицы в следующий слева разряд. При вычитании, если необходимо, делают заем. В ВТ с целью упрощения реализации арифметических операций применяют специальные коды: прямой, обратный, дополнительный. За счет этого облегчается определение знака результата операции, а операция вычитания чисел сводится к арифметическому сложению. В результате упрощаются устройства, выполняющие арифметические операции.
Прямой код складывается из знакового разряда (старшего) и собственно числа. Знаковый разряд имеет значение
0 – для положительных чисел;
1 – для отрицательных чисел.
Например: прямой код для чисел –4 и 5:
-4 410=1002 1_100
5 510=1012 0_101
Обратный код образуется из прямого кода заменой нулей - единицами, а единиц - нулями, кроме цифр знакового разряда. Для положительных чисел обратный код совпадает с прямым. Используется как промежуточное звено для получения дополнительного кода.
Например:
Прямой код 1_100 1_101
Обратный код 1_011 1_010
Дополнительный код образуется из обратного кода добавлением 1 к младшему разряду.
Например: найти дополнительный код -710
-710=1112
Прямой код 1_111
Обратный код 1_000
Дополнительный код :1_001 (1_000+1)
Правило сложения двоичных чисел:
При алгебраическом сложении двоичных чисел с использованием дополнительного кода положительные слагаемые представляют в прямом коде, а отрицательные – в дополнительном коде. Затем производят суммирование этих кодов, включая знаковые разряды, которые при этом рассматриваются как старшие разряды. При возникновении переноса из знакового разряда единицу переноса отбрасывают. В результате получают алгебраическую сумму в прямом коде, если эта сумма положительная, и в дополнительном коде, если сумма отрицательная.