Числовое программное управление, автоматизированное проектирование и изготовление с помощью ЭВМ (Глава 5 книги "Роботы и автоматизация производства"), страница 5

Десятичное число 1439 =

== двоично-десятичному числу 1010000111001 (3 нуля в начале опущены) Написание:

Двоично-десятичное число

0001

0100

0011

1001

Десятичное число

1

4

3

9

Рис. 5.8

Написание числа 1439 в двоично-десятичной системе

Двоично-десятичные числа распределены по знакам десятичного числа. Чисто двоичное написание десятичного числа 1439 будет короче, чем в двоично-десятичной системе, и в то же время сложнее для прочтения. Перевод больших десятичных чисел в чисто двоичную систему требует вычислений, изложение которых выходит за рамки этой книги и в действительности не нужно большинству инженеров по автоматизации и робототехнике. Для сравнения, однако, укажем, что чисто двоичное написание числа 1439 будет 1011001111. В этом можно удостовериться, найдя десятичный эквивалент каждой из двоичных единиц в двоичном числе и сложив эти эквиваленты, чтобы получить суммарное десятичное значение всего двоичного числа. Десятичный эквивалент знака в двоичном числе равен 2n-1, где п — номер разряда в двоичном числе, считая справа. При счете справа в нашем примере двоичное число 10110011111 имеет двоичную единицу в 1, 2, 3, 4, 5, 8, 9 и 11 разрядах. Десятичный эквивалент затем можно подсчитать, как это сделано в табл. 5.3.

5.3. Вычисление десятичного эквалента двоичного числа 10110011111

Разряд цифры

Двоичное число

Десятичный эквивалент

Вычисленный десятичный эквивалент

1

1

20

1

2

1

21

2

3

1

22

4

4

1

23

8

5

1

24

16

6

0

0

0

7

0

0

0

8

1

27

128

9

1

28

256

10

0

0

0

11

1

210

1024

Итого

1439

Буквы. Шестая и седьмая дорожки совместно с дорожками, предназначенными для кодирования цифр, используются для кодирования букв и специальных знаков. Рис. 5.7 показывает, что существует определенная система кодирования букв (английского) алфавита, хотя код ASCII несколько отличается от кода EIA244A. В коде ASCII алфавит кодируется пробиванием отверстий в шестой и седьмой дорожках с добавлением чисто двоичного кода номера буквы от 1 до 26 на дорожках с первой по пятую, поскольку в алфавите 26 букв. Код EIA244A следует двоично-десятичное системе счисления за счет разделения алфавита на три группы по десять букв. Группы кодируются следующим образом.

Буквы алфавита от А до I: отверстия в шестой и седьмой дорожках; буквы от J до R: отверстия в седьмой дорожке; буквы от S до Z: отверстия в шестой дорожке. Внутри группы цифры нумеруются с 1 до 9 в двоичной системе.

Внимательный читатель уже вероятно заметил некоторое несоответствие в описании процедуры кодирования букв в коде EIA244A. Ведь алфавит состоит из 26 букв, а не из 27, поэтому «три группы по девять букв» оставляют одну комбинацию неиспользованной. Сможете ли вы определить по рис. 5.7, какая комбинация пропущена и какому месту в алфавите это соответствует?

Проверка четности. Пятая дорожка в коде EIA244A и восьмая дорожка в коде ASCII зарезервированы для проверки надежности перфоратора и устройства считывания программы, установленного на станке. По установленному жесткому правилу число отверстий в каждом горизонтальном ряду всегда должно быть четным (в случае кода EIA244A) или нечетным (в случае кода ASCII). Это правило называется проверкой четности (или нечетности в зависимости от кода). Поскольку некоторым знакам двоично-десятичного кода соответствует четное количество отверстий, а некоторым — нечетное, дорожка четности используется для добавления в случае необходимости отверстия, обеспечивающего четность (или нечетность) каждого горизонтального ряда. Цель этой операции сейчас будет объяснена.