Наиболее простой компьютерной арифметической операцией над целыми числами, обычно реализованной аппаратно, является прибавление единицы. В большинстве языков программирования для выполнения такой операции существует специальное обозначение, отличное от обычного сложения. Так, в Turbo-Pascal это функция succ(a) и процедура inc(а). В языке С — эта операция а++ и ++а.

Результат функции succ(a) может быть помещен в любую переменную того же типа, что и а, и, если она отлична от а (например, b:=succ(a)), то значение переменной а при этом останется прежним. В результате выполнения процедуры inc(a) значение а окажется увеличенным на единицу.

В С операции а++ и ++а значение самой переменной а увеличивают на единицу, но в первом случае результатом выражения считается значение а до его увеличения, а во втором случае — после.

Сформулируем алгоритм реализации аппаратного прибавления единицы.

Любое целое число, записанное в k разрядах, будем обозначать как <начало><последний разряд>, где <начало> — это первые слева k-1 разрядов, а <последний разряд> самый правый разряд в записи числа. Число является четным, если <последний разряд> = 0, и нечетным — в противном случае. Заметим, что запись числа в дополнительном коде это правило не нарушает.

Рекурсивный алгоритм succ(a,k) прибавления единицы к левым разрядам числа а:

  • если k = 0, то конец;
  • если а — четное, то вносим единицу в <последний разряд>; конец;
  • если а — нечетное, то вносим ноль в <последний разряд>; succ(a,k) = succ(<начало>, k-1); конец.

Очевидно, если все k разрядов исходного числа а состоят из единиц, алгоритм все равно закончит свою работу после k шагов (в остальных случаях их будет меньше) и результатом будет являться число 0.

content

Share
Published by
content

Recent Posts

Копирование и размножение планов и карт

Если основа оригинала (карты пли плана) прозрачна, то копию можно снять при помощи стола со…

6 месяцев ago

Решение задач на топографических планах (картах)

Определение координат точки. Пусть точка А (рис. 32) находится в квадрате, абсциссы и ординаты вершин…

6 месяцев ago

Рельеф местности и способы его изображения

Рельефом местности называется совокупность неровностей физической поверхности земли. В зависимости от характера рельефа местность делят…

7 месяцев ago

Условные знаки топографических планов и карт

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

7 месяцев ago

Номенклатура карт и планов

В инженерной геодезии чаще всего пользуются топографическими картами. Их составляют в масштабах 1:10000, 1:25000, 1:50000…

7 месяцев ago

Масштабы

Масштабом называется отношение длины отрезка линии на плане (профиле) к соответствующей проекции этой линии на…

7 месяцев ago