Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛБ_МП.doc
Скачиваний:
8
Добавлен:
01.04.2025
Размер:
2 Mб
Скачать

1.1.4. Операции над числами.

Операции, проводимые над числами, делятся на две независимые группы: арифметические и логические.

Арифметические операции.

Арифметические операции – операции, проводимые непосредственно над всем числом.

Простейшие арифметические операции (сложение и вычитание) производятся во всех системах счисления по одинаковым законам.

Организация операции сложения:

;

Где: Аn – n-ый разряд первого слагаемого;

Bn – n-ый разряд второго слагаемого;

F’n – результат операции между соответствующими разрядами;

Fn – записываемое значение результата в n-ом разряде;

R – основание системы счисления, в которой производится операция.

Организация операции вычитания:

Вычитание может быть организованно двумя способами: вычитание непосредственно по законам алгебры и с использованием алгебраического сложения с числами, представленными в дополнительном коде.

Первый тип представлен следующими выражениями.

;

Второй тип - алгебраическое сложение с использованием дополнительного кода, является наиболее приемлемым в микропроцессорной технике и его сущность поясняется в ниже приведенном примере.

Пусть требуется сложить два десятичных числа N1 = 831 и N2 = -376. Введем дополнительное понятие положительного числа как «0» и отрицательного числа как «1». Так как второе слагаемое — отрицательное число, пользование приемом, представленным ранее, потребовало бы последовательности действий с заемами из старших разрядов. Предусматривать в цифровом устройстве дополнительно такую последовательность действий является затруднительным. Искомый результат может быть получен и с использованием последовательности действий с передачей переносов в старшие разряды, которые используются при сложении положительных чисел. Предварительно введем дополнительное понятие положительного числа как «0» и отрицательного числа как «1». В результате этого N1 = 0 831 и N2 = 1 376. Далее отрицательное число 1 376 преобразовываем в дополнительный код по следующему закону: во всех разрядах, запишем дополнение до 9 к цифрам этих разрядов (до R-1 в случае использования других систем счисления) и затем прибавим единицу в младший разряд. Число N2 = 1 376 в дополнительном коде есть N2 доп = 1 624.

Далее произведем сложение по правилам сложения с передачей переносов в старшие разряды (т. е. так как складываются положительные числа):

П ереносы 1 1

Первое слагаемое, N1 0 8 3 1

Второе слагаемое, N2 доп 1 6 2 4

Сумма 0 4 5 5

При сложении складываются и двоичные цифры знаковых разрядов с отбрасыванием возникающего из этого разряда переноса.

Операции умножения и деления являются более сложными процедурами и организуются путем создания определенных алгоритмов. Операция умножения может быть представлена двумя видами: операцией многократного последовательного сложения и операцией умножения «в столбик» с использованием операций сдвига.

Первый тип представляет собой процедуру, при которой первый множитель складывается самим с собой n раз, где n – значение второго множителя. Т.е. данная процедура имеет вид:

А*В = А+А+А+…+А

В-раз

Данный способ при достаточно больших множителях является ресурсоемким, и может занимать большое время.

Второй тип более сложен по построению, однако скорость вычисления, согласно данного алгоритма, выше.

Операция умножения чисел, представленных в форме с фиксированной точкой, включает в себя определение знака и абсолютного значения произведения.

Определение знака произведения. Знаковый разряд произведения может быть получен суммированием знаковых разрядов сомножителей без формирования переноса (так называемым суммированием по модулю 2). Действительно, при совпадении цифр знаковых разрядов сомножителей (0 ... и 0..., либо 1 ... и 1 ...) их сумма по модулю 2 равна 0, т. е. соответствует знаковому разряду произведения двух сомножителей, имеющих одинаковые знаки; при несовпадении цифр знаковых разрядов эта сумма будет равна 1, что также соответствует знаковому разряду произведения двух сомножителей с разными знаками.

Определение абсолютного значения произведения. Абсолютное значение произведения получается путем перемножения чисел без учета их знаков (так называемого кодового умножения). Эта операция имеет следующий вид.

…А3А2А1А0

множитель

…В3В2В1В0

множимое

В0*(…А3А2А1А0)

1-е частичное произведение

В1*(…А3А2А1А0)

2-е частичное произведение

В2*(…А3А2А1А0)

3-е частичное произведение

В3*(…А3А2А1А0)

4-е частичное произведение

Результат умножения

Как видно из примера, в процессе выполнения операции умножения формируются частичные произведения (произведения множимого на цифры разрядов множителя), которые суммируются с соответствующими сдвигами друг относительно друга. В цифровых устройствах процессу суммирования частичных произведений придают последовательный характер: формируется одно из частичных произведений, к нему с соответствующим сдвигом прибавляется следующее частичное произведение, к полученной сумме двух частичных произведений прибавляется с соответствующим сдвигом очередное частичное произведение и т.д., пока не окажутся просуммированными все частичные произведения. Этот процесс суммирования можно начинать с младшего либо старшего частичного произведения.

Логические операции.

Логические операции – операции, которые выполняются согласно законам булевой алгебры. Данные операции производятся только с числами, представленными в двоичной системе счисления, по разрядно, в соответствии с определенными законами – таблицами истинности. Наиболее распространены следующие логические операции: «И», «ИЛИ», «НЕ» и «ИСКЛЮЧАЮЩЕЕ ИЛИ» («сложение по модулю «2»»).

О перация «И».

О бозначение: или .

Определение: В результате выполнения логической операции «И» функция является истиной только в случае истинности всех операндов.

Таблица истинности:

X1

X2

Y

0

0

0

0

1

0

1

0

0

1

1

1

Операция «ИЛИ».

О бозначение: или .

Определение: В результате выполнения логической операции «ИЛИ» функция является истиной в случае истинности хотя бы одного операнда.

Таблица истинности:

X1

X2

Y

0

0

0

0

1

1

1

0

1

1

1

1

Операция «НЕ».

О бозначение: .

Определение: В результате выполнения логической операции «НЕ» функция является ложью в случае если операнд был истиной и на оборот.

Таблица истинности:

X

Y

0

1

1

0

Операция «ИСКЛЮЧАЮЩЕГО ИЛИ».

О бозначение: или .

Определение: В результате выполнения логической операции «ИСКЛЮЧАЮЩЕГО ИЛИ» функция является истиной только в случае истинности одного операнда.

Таблица истинности:

X1

X2

Y

0

0

0

0

1

1

1

0

1

1

1

0

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]