Устройство для отладки программ

Иллюстрации

Показать все

Реферат

 

Союз Советских

Социалистических

Республик

ОПИСАНИЕ

ИЗОБРЕТЕНИЯ

К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ

<,>763900 (61) Дополнительное к авт. саид-ву (22) Заявлено 210678 (21) 2640853/18-24 с присоединением заявки Нов (23) Приоритет

Опубликовано 15,0980, Бюллетень 1 1о 34

Дата опубликования описания 25 ° 09.80 (51)М. Кд.3

С 06 F 11/00

Государственный комитет

СССР по делам изобретений и открытий (53) УДК 628 ° 327..66(088.8) (72) Авторы изобретения

В.A.Åpøîâ и В.К.Бондаренко (71) Заявитель (54) УСТРОИСТВО ДЛЯ ОТЛАДКИ ПРОГРАММ

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

Известны устройства (11 для отладки программ, содержащие блок памяти, блок формирования адреса, блок приема и выдачи чисел и команд, блок управления, регистр режима программы и триггер управления

Недостаток известных устройств состоит в длительности отладки программ.

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

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

2() входом первого триггера, выход которого соединен со вторым входом регистра первого перехода. Выход второго элемента задержки соединен со вторым входом второго триггера, 25 выход которого соединен со вторым входом регистра второго перехода.

Выход третьего триггера соединен с выходом устройства, а второй вход третьего триггера - co входом уст30 ройства.

763900

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

Однако оно имеет следующие недостатки:

1О в автоматическом режиме не фиксируется адрес команды, предшествующий адресу перехода, т.е. адрес команды, откуда был совершен переход; в полуавтоматическом режиме не 5 производится останов ЦВМ в местах ветвления отлаживаемой программы, что существенно ограничивает возможности устройства при отладке программы и вызывает увеличение сроков 2О отладки.

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

Кроме того, в полуавтоматическом

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

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

"Останов ЦВМ", что существенно увеличивает время отладки.

Целью изобретения является сокращение времени отладки программ устройства. 45

Поставленная цель достигается тем, что в устройство, содержащее регистр первого перехода, соединенный первым входом с выходом регистра второго перехода, а вторым входом — щ() с выходом первого триггера, первый вход которого подключен ко входу первого элемента задержки, а второй вход — к выходу первого элемента задержки, входу второго элемента задержки и первому входу второго триггера, второй вход и выход которого соединены соответственно с выходом второго элемента задержки и первым входом регистра второго перехода, регистр команд, вход которого является 4Q первым входом устройства, а первый выход соединен со входом блока операций, первый выход которого соединен через дешифратор с перным входом счетчика команд, соединенного первым Я выходом со вторым входом регистра второго перехода, схему сравнения, первым входом подключенную через первый переключатель к перному и второму выходам регистра команд, и нторым входом — через второй переключатель к первому и второму выходам счетчика команд, и третий триггер, первый вход и выход которого являются соответственно вторым входом и выходом устройства, а второй вход — через третий переключатель соединен со вторым входом счетчика команд, подключенного ко второму выходу блока операций, согласно изобретению, введены четвертый триггер, два элемента И, третий элемент задержки и три переключателя, причем первый вход первого элемента И соединен со вторым выходом блока операций, третий и четвертый выходы которого через четвертый переключатель соединены со вторым входом первого элемента

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

На чертеже представлена структурная схема устройства, содержащего блок 1 управления, регистр 2 первого перехода, регистр 3 второго перехода, узел 4 управления регистрами перехода, схему 5 сравнения, регистр б команд, блок 7 операций, дешифратор 8, счетчик 9 команд, первый вход 10, элементы задержки

11, 12, триггеры 13-15, второй вход

16, третий переключатель 17, первый переключатель 18, второй переключатель 19, (20), четвертый переключатель 21 (22), шестой переключатель

23, пятый переключатель 24, узел

25 управления переходами, включающий первый элемент И 26, четвертый триггер 27,.второй элемент И

28 и третий элемент. задержки 29.

Устройство работает в двух режимах: в автоматическом режиме в реальном масштабе времени и в полуавтоматическом режиме с остановами машины по каждому условному или безусловному переходу (УП или БП).

Если переключатели 21-24 находятся в отключенном положении, то устройство работает как прототип, т.е. н регистрах 2, 3 переходов фиксируются адреса двух последних перехо763988 что на момент выработки сигнала перехода (УП или БП) в блоке 7 адрес команды, который находился в счетчике 9, запишется в регистр 3, т:е. запишется адрес, предшествующий адресу перехода.

Временная диаграмма работы ЦВМ обычно построена так, что вначале по одному из машинных тактов вырабатывается в блоке 7 сигнал перехода (УП или БП)., по следующему такту, если условия выполнены, вырабатывается сигнал обнуления счетчика 9 команд (CK=O). В результате, после того как сработали элементы узла 25 и узла 4 от сигнала

УП и БП, эти узлы вновь сработают от сигнала СК=О, который поступит на один из входов элемента И 26.

Процесс повторится, но при этом в счетчике 9 команд уже находится адрес перехода, который при срабатывании узла 4 управления от сигнала СК О запишется в регистр 3, а тот адрес, который там был, перепишется в регистр 2. Если в данный момент остановить ЦВМ, то оператор на поле индикации будет иметь возможность наблюдать: адрес команды с регистра 6 команд, адрес счетчика 9 команд, адрес перехода с регистра 2 и адрес, предшествующий переходу с регистра 2. Часто возникает необходимость зафиксировать адрес перехода (обычно условного) и адрес, предшествующий переходу, на каком-то участке программы при условии, что программа на цВМ прошла весь участок (задачу).Для этого необходимо включить переключатель

23 в устройстве, а место, где необходимо прервать работу узла 25 управления переходами, зафиксировать с помощью переключателя 19 (или 20), т.е. с помощью этого пе30

40 дов (УП или БП) на момент останова программы (останова ЦВМ).

В автоматическом режиме, если включить переключатель 21 (или 22) сигнал с блока 7 операций поступит в узел 25 на вход открытого элемен5 та И 26, так как сигнала запрета на его работу со схемы сравнения 5 нет (переключатель 23 находится в отключенном положении). Сигнал УП или

БП из блока 7, через элемент И 26 поступит на вход триггера 27, когорый откроет элемент И 28. Одновременно сигнал с элемента И 26 через элемент задержки 29 поступает на второй вход элемента И 28, после срабатывания которого сигнал поступит на вход триггера 27. Триггер 27 вновь изменит свое состояние и в результате на вход элемента И 28 поступит сигнал запрета. 20

Узел 4 управления сработает от сигнала элемента И 28 таким образом, реключателя устанавливается адрес команды, при которой сработает схема сравнения 5 и выдаст через переключатель 23 сигнал запрещения работы элемента И 26. В результате в регистрах 2, 3 зафиксируются интересующие оператора адреса. Процесс идет в реальном масштабе времени.

В полуавтоматическом режиме включается переключатель 24. Теперь с каждым приходом сигнала перехода с блока 7 (УП или БП) будет срабатывать триггер 15 и выдавать сигнал "Ост. ЦВМ" в блок 1. Чтобы вновь осуществить пуск машины, оператор с пульта ЦВМ подает сигнал обнуления по входу 16 на триггер 15. И снова пройдет цикл работы машины до прихода сигнала УП (или БП). В данном режиме оператор достаточно оперативно ве) ет контроль адресов переходОв и адресов, предшествующих переходам.

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

Формула изобретения

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

763900

1 !

Составитель В. Вертлиб

Редактор Т.Орловская Техред Ж.Кастелевич Корректор E.папi.

Заказ 6284 42 Тираж 751 Подписное

ВНИИПИ Государственного комитета СССР по делам изобретений и открытий

113035, Москва, Ж-35, Раушская наб., д. 4/5

Филиал ППП "Патент", г. Ужгород, ул. Проектная, 4 через второй переключатель к первому и второму выходам счетчика команд, и третий триггер, первый вход и выход которого являются соответственно вторым входом и выходом устройства, а второй вход — через третий переключатель соединен со вторым входом счетчика команд, подключенного ко вторОму выходу блока операций, о т л и ч а ю щ е е с я тем, что, с целью сокращения времени отладки программы, в него введены четвертый триггер, два элемента И, третий элемент задержки и три переключателя, причем первый вход первого элемента И соединен со вторым выходом блока операций, третий и четвертый выходы которого через четвертый переключатель соединены со вторым. входом первого элемента И, выходом соединенного с первым входом четвертого триггера и через элемент задержки с первым входом второго элемента И, выход которого подключен ко входу первого элемента задержки и второму входу четвертого триггера, выходом соединенного со вторым входом второго элемента И, второй вход первого элемента И подключен через пятый переключатель ко второму входу третьего триггера, выход схемы сравнения через шестой переключатель соединен с выходом устройства и третьим входом первого элемента И.

Источники информации, принятые во внимание при экспертизе

1$ 1. Авторское свидетельство СССР по заявке 9 2499775, кл. G 06 F 11/00, 1977.

2. Авторское свидетельство СССР по заявке 9 2016696/18-24, щ кл. G 06 F 9/20, 1974 (прототип).