Кодирование и обработка в компьютере целых чисел без знака

Будем исходить из того, что для записи числа в устройствах компьютера выделяется фиксированное количество двоичных разрядов. Память компьютера имеет байтовую структуру, но, размер одной адресуемой ячейки обычно составляет несколько б. К примеру, в компьютерах IBM ячейка памяти соединяет во единожды 2 б (16 двоичных разрядов) — такая композиция связанных примыкающих ячеек, обрабатываемая вместе, именуется машинным словом. Для представления числа в регистре арифметико-логического устройства микропроцессора, где формируется итог операции, имеется очередной дополнительный одноразрядный регистр, который именуется регистром переноса и который можно рассматривать в качестве продолжения (т.е. 17-го бита) регистра результата. Предназначение этого бита выяснится чуток позднее.

Конечный размер разрядной сетки порождает понятие «наибольшее целое число», которого в обыкновенном (немашинном) представлении чисел просто не существует. Если количество разрядов k и p = 2, то, согласно (4.8), (Z2)max = 2k — 1. А именно, при k = 16 (Z2)max = 216 — 1 = 1111111111111112 = 6553510. Другими словами, целого числа, скажем, 65636 и поболее в компьютере просто не может существовать и, как следует, возникновение в процессе вычислений чисел, превосходящих (Z2)max, должно интерпретироваться как ошибка. Наименьшим целым числом в беззнаковом представлении, разумеется, является (Z2)min = 0000000000000002 = 010. В языке программирования PASCAL целые числа без знака, для записи которых отводится 2 б, определены как тип Word. Тип устанавливает метод кодировки числа, количество отводимых для записи ячеек памяти (т.е. разрядность числа), также список допустимых операций при обработке. Выход за границу 65535 вероятен только методом роста количества разрядов для записи числа, но это порождает новый тип со своим Zmax; к примеру, тип Longint* с наибольшим значением 214748364710, числа которого занимают 4 б.

*Longint является типом целого числа со знаком.

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

В последнем случае в том разряде, где находились слагаемые, оказывается 0, а 1 переносится в старший разряд. Место, где сохраняется переносимая в старший разряд 1 до того, как она будет применена в операции, именуется битом переноса (см. пример 9.1).

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