Генератор знаков Советский патент 1985 года по МПК G06F3/14 

Описание патента на изобретение SU1164690A1

Изобретение относится к вычислительной технике и предназначено для генерации знаков в устройствах отображения информации. Цель изобретения - расширение области применения генератора, за . счет возможности формирования знако повернутых в плоскости отображения На фиг, 1 приведена структурная схема генератора знаков; на фиг. 2 кодировка направлений единичных векторов; на.фиг. 3 - один из генер руемых знаков,. Генератор знаков содержит последовательно соединенные первый регис 1, первый блок 2 памяти, первьш счетчик 3 и второй блок 4 памяти, блок 5 управления, второй счетчик 6, дешифратор 7, последовательно соединенные сумматор 8, второй регистр 9 и третий блок 10 памяти, выходы которого подключены соответственно к первому и второму умножителям 11 и 12, третий счетчик 13, выход которого соединен с одним из входов злемента совпадения 14. Генератор работает следующим образом.. В качестве примера конкретного выполнения предлагаемого устройства рассматривается генератор з,наков. чертежно-графического автомата, предназначенного для нанесения знаковой информации на бумажный носитель. Формирование знаков производи ся путем вычерчивания последователь ности векторов,Векторы кодируются двоичными восьмиразрядными словами Набор таких слов составляет подпрограмму знаков и хранится во втором блоке памяти 4. Векторы характеризуются направлениями и длиной. Направление векто ра кодируется четырехразрядным двоичнь м числом. Всего имеется 16 диск ретных направлений, отстоящих друг от друга на 22,5. Кодировка направ лений единичных векторов показана на фиг. 2. Длина вектора определяет ся количеством единичных векторов, которое в векторе кодируется трехразрядным двоичным числом. Растр знака из 7 7 единичных векторов. Слово, определяющее вектор, состоит из четьфех разрядов (1-4) кода направления вектора, трех разрядов (5-7) количества единичных векто02ров, одного разряда (8) положения пишущего элемента. Если вектор необходимо вычерчивать, в восьмом разряде записывается единица; Если необходимо произвести перенос пишущего элемента без вычерчивания - записывается ноль. Для вычерчивания векторов применяются единичные векторы. Всего имеется по количеству направлений 16 единичных векторов. Единичные векторы кодируются в элементарных шагах восьмиразрядными двоичными числами. Слово, определяющее единичный вектор, состоит из четырех разрядов (1-4) числа элементарных шагов по оси X и четьфех разрядов (5-8) числа элементарных шагов по оси У. Максимально единичный вектор по одной координате может содержать . восемь элементарных шагов. Единичные векторы позволяют в неявном виде закодировать величину угла наклона, по. которому проходит вектор. Это.необходимо для поворота знака. Применение единичных векторов позволяет сократить объем памяти, необходимой при повороте знака. Информация о единичных векторах хранится в третьем блоке 10 памяти. Объем этой памяти составляет 16 байт. Для вычерчивания нужного знака следует обращение к генератору знаков с кодом знака. Код знака в сопровождении синхросигнала подается на вход генератора знаков и фиксируется на первомрегистре 1, а синхросигнал сопровождения знака поступает в блок 5 управления. По коду знака из первого блока 2 памяти выбирается на первый сметчик 3 код промежуточного адреса. По адресу первого счетчика 3 следует обращение во второй блок 4 памяти, происходит считывание первого байта формирования знака. Информация о направлений вычерчиваемого вектора поступает на вход сумматора 8, где происходит суммирование кода направления вектора и кода угла поворота знака. После суммирования получается четьфехразрядное двоичное число, являющееся кодом направления повернутого вектора. Этот код фиксируется на втором регистре 9. Код направления повернутого вектора является адресом, по которому обращаются в третий блок 10 j

памяти. Из третьего блока 10 памяти считывается информация о количестве элементарных шагов по осям X и У для данного направления единичного .вектора. Информация о количестве элементарных шагов по оси Х(1-4 разряд) поступает на первый умножитель 11, информация о количестве элементарных щагов по оси У (5-8 разряд) поступает на второй умножитель 12. В умножителях 11 и 12 происходит перемножение числа единичных векторов на число элементарных шагов в единичном векторе. В результате перемножения получается число эле- ментарных шагов по осям У и X. Информация о числе элементарных шагов по осям X и У подается на выход генератора знаков и записывается во второй и третий счетчики 6 .и 13. После записи информации в счетчики 6 и 13 под Действием управляющих импульсов, поступающих из блока 5 управлеция, происходит вычитание из двоичных чисел, записанных в счетчиках 6 и 13. Навыходе счетчиков 6 и 13 присутствуют сигналы лог. 1. -В процессе вычитания, двоичных чисел из счетчиков 6 и 13 происходит вычерчр ваниё вектора. После того, . как в счетчиках 6 и 13 установятся нулевые состояния, на выходах счетчиков 6 и 13 появляются сигналы лог. О. На выходе элемента совпадения 14 появляется сигнал лог. 1, который пересчитывает на единицу первый счетчик 3 и запрещает прохождение управляющих сигналов с блока 5 управления

Таким образом, первый вектор зяака сформирован полностью. Далее происходит выборка следующего байта из второго блока 4 памяти и процесс повторяется до тех пор, пока не будет сформирован знак. При распознавании байта, являющегося признаком конца знака, обращение к второму . блоку 4 памяти прекращается.. Блок 5 управления вырабатывает сигнал, обнуляющий первый счетчик 3. Генератор знаков готов к приему кода знака и формированию нового знака.

Рассмотрим на конкретном примере как осуществляется поворот знака. Например, необходимо произвести вычерчивание знака 1, повернутого на 45 относительно горизонтальной оси. По коду знака 1, который

фиксируется на первом регистре 1, из первого блока 2памяти выбирается на первый счетчик 3 код промежуточного адреса. По адресу с первого счетчика 3 следует обращение во второй блок 4 памяти, происходит считывание первого байта формирования знака. В первом байте 01001111, в 1-4 разряде записан код направления вычерчиваемого вектора, в 5-7 разряде число единичных векторов в двоичном коде, в 8 разряде положение пера. Код направления вектора (0100) поступает в сумматор 8, на вход которого одновременно с кодом знака поступает код угла поворота 0010, происходит суммирование кода направления вектора и кода угла поворота. Код повернутого вектора (0110) фиксируется на втором регистре 9 и является адресом, по которому обращаются в третий блок 10 памяти. По адресу (0110) из третьего блока 10 памяти считывается байт (01100110), который характеризует единичный вектор данного направления В 1-4 разряде в двоичном коде записано число элементарнык шагов пооси X (6 шагов), в 5-8 разряде - число .элементарных шагов по оси У (6 шагов Информация о числе элементарных шагов по осям X и У поступает соответственно на первый и второй умножители 11 и 12, где происходит пе1 емножение числа элементарных Щагов по осям X и У на число единичных векторов (7 векторов), которое поступает на умножители 11 и 12 с в.торого блока 4 памяти. В результате перемножения получаем число элементарных щаго по осям X и У (42 шага), необходимых для вычерчивания первого вектор а. Число элементарных шагов по осям X и У записьгоа ется соответственно во второй и третий счетчики 6 и 13 и подается на выход генератора зна-ков. После записи чисел в счетчики 6 и 13 на выходе элемента совпадения 14 появляется сигнал, разрешающий прохождение управляющих импульсов на счетчики 6 и 13 и выход генератора знаков. Под действием управляющих импульсов с блока 5 управления происходит вычитание чисел, записанных в счетчиках 6 и 13. В процессе вычитания двоичных чисел из счетчиков 6 и 13 производится вычерчивание вектора. Направление

движения пишущего элемента определяется по коду направления с помощью дешифратора 7. После установки нулевых состояний в счетчиках 6 и 13 на вьгходе элемента совпадения 14 появляется сигнал лог. 1, который запрещает прохождение управляющих сигналов с блока 5 управления и пересчитьгоает на единицу первый счетчик 3. Происходит выборка следующего байта 00001001 из второго блока 4 памяти. В сумматоре 8 код направления вектора 0000 суммируется с кодом угла поворота- 0010. По коду повернутого вектора 0010 из третьего

блока 10 памяти выбирается байт 01100110 единичного вектора. В умножителях 11, 12 производятся перемножения чисел 100 и 0110, результаты заносятся в счетчики 6 и 13 и вычитаются.

Таким образом, первый и второй векторы знака сформированы полностью. Далее производится выборка байта 00000000, являющегося признаком конца знака. По этому байту в блоке 5 управления формируется сигнал, обнуляющий первыйСчетчик 3. Генератор знаков готов к формированию следующего знака.

Похожие патенты SU1164690A1

название год авторы номер документа
Генератор знаков 1985
  • Яскевич Сергей Анатольевич
  • Яскевич Константин Анатольевич
  • Короленко Владимир Анатольевич
  • Шафир Михаил Абрамович
SU1251063A1
Генератор символов 1989
  • Кафизов Валерий Иосифович
SU1633386A1
Генератор знаков 1983
  • Доля Александр Давидович
SU1166169A1
Генератор знаков 1982
  • Доля Александр Давидович
SU1049959A1
Генератор знаков 1979
  • Доля Александр Давидович
SU911576A2
Устройство для отображения информации 1986
  • Корзун Валерий Николаевич
  • Борзых Станислав Иванович
  • Путренко Борис Алексеевич
SU1319072A1
Кнопочный номеронабиратель 1982
  • Яскевич Сергей Анатольевич
  • Яскевич Константин Анатольевич
SU1149429A1
Устройство для отображения информации 1985
  • Козловский Николай Петрович
SU1316028A2
Генератор случайных процессов 1981
  • Баканович Эдуард Анатольевич
  • Волорова Наталья Алексеевна
  • Лысов Валерий Борисович
SU985786A1
Устройство для вычисления элементарных функций 1980
  • Аристов Василий Васильевич
SU1035604A1

Иллюстрации к изобретению SU 1 164 690 A1

Реферат патента 1985 года Генератор знаков

ГЕНЕРАТОР ЗНАКОВ, содержащий последовательно соединенные первый регистр, первый блок памяти, первый счетчик и второй блок памяти, первый выход которого является первым выходом генератора, второй счетчик дешифратора, выходы которого йвляются вторым и третьим выходами генератора, блок управления, первый вход которого соединен с вторым выходом второго блока памяти, первый выход - с вторым входом первого счетчика, второй выход - с первым входом второго счетчика, третий выход - с первым входом первого регистра, второй вход которого является первым входом генератора, о т л и ч а ю щ .ии с я тем, что, с целью расширения области применения генератора ,за счет возможности формирования знаков, повернутых в плоскости отображения, в него введены последовательно соединенные сумматор, второй регистр и третий блок памяти, выходы которого соединены соответственно с первым и вторым умножителями, вторые входы которого соединены с вторым выходом второго блока памяти,. а выходы умножителей являются соответственно четвертым и пятым выходом генератора и .соединены с вторыми входами второго и третьего счетчиков, первьй вход третьего счетчика соеди(Л нен с первым входом второго счетчика и является шестым выходом генератора, вьхходы второго и третьего счетчиков соединены с элементом совпадения, выход которого соединен с третьим входом первого счетчика и вторым входом блока управления, первый вход сумматора соединен с третьим Од выходом второго блока памяти, второй вход второго регистра соединен с четвертым выходом блока управления, Ю вход дешифратора соединен с выходом сумматора.

Формула изобретения SU 1 164 690 A1

,

OW1 0100 0011 0010

опо

1010 1011 liOO 1101- 1110 Фиг

0100

у

/ ,

QOOO

Фиг.З

Документы, цитированные в отчете о поиске Патент 1985 года SU1164690A1

Авторское свидетельство СССР N758138, кл
Приспособление для точного наложения листов бумаги при снятии оттисков 1922
  • Асафов Н.И.
SU6A1
Авторское свидетельство СССР I 760079, кл
Приспособление для точного наложения листов бумаги при снятии оттисков 1922
  • Асафов Н.И.
SU6A1

SU 1 164 690 A1

Авторы

Яскевич Сергей Анатольевич

Шафир Михаил Абрамович

Яскевич Константин Анатольевич

Даты

1985-06-30Публикация

1983-04-06Подача