Дж.Хиллбурн, П.Джулич Микро-ЭВМ и микропроцессоры (1979) (1092080), страница 29
Текст из файла (страница 29)
При втором проходе вводится промежуточный файл, а выходом является программа в машинном коде. ЛИТЕРАТУРА 1. С!аге С. и., Вез!яп!пя Ьойбс 5ув1етв Омпя 5(а1е МасЫпев, МсСгатч-Н!П, Ы. У., 1973. 2. йГаупе М. Ы., Р!огчсьагнпя Сопсеры апб Оа1а Ргосевв(пя, Сап(!е16 Ргевв, 5ап Ггапс1всо, 1973. 3. Г1огев 1., Сотршег 5о((гчаге, Ргепнсе-Нан, 1пс. Епи)ечгооб СППв, Ы. Л., 1965; есть русский перевод: Флорес А., Программное обеспечение, изд-во «Мир», М., 1972.
4. 51аг!г Р. А., О!И!1а! Сопгри1ег Ргоягвгпт!пд, ТЬе Маспинап Со., Тогоп1о, 1967. 5. 8080 5!пя!е-СЫр Е!ИЫ-ВИ Рагане! Сеп!га! Ргосеввог Оп!!., 1п1е! Согр., Арп! 1974. 6. Ргоигагптгпи Манив! 1ог Пйе 8080 М!сгосотршег 5ув1ет, 1п(е! Согр., Мау 1974. 7. 5Ьегтап Р. М., Ргоигатт!пя апд Соб(пя О!851а! Сотри1егв, )Унеу, Ы.
У., 1963. 8. О!абв(опе В., !)ев!яп!пя чм1Ь Мкгоргосеввогв 1пв1еад о( Рлгеб Ьои!с АвЪ Моге о! Оемяпегв, Е!го!гонгов, 91 — 104 (Ос1. 11, 1973). 9. НП Р., Лг., Ре1егвоп О. и., 1)!8!!а! 5уыетв: Нагбгчаге Огдапыапоп апб Оев!ип, йГ!!еу, Ы. У., 1973. 10. Когп О. А., М!п!сотри1егв 1ог Епя!пеегв апд 5с!еп1!в!з, МсОгагч-НП1, Ы. У., 1973. 11. МС5.8 АвветЫу 1апяиаяе Ргоягатт!пи Манив(, 1п(е1 Согр., Ыоч. 1973. 12. Сопчегза1юпа1 АвветЫег Мапиа1, РиЬПса1юп № 4200076Х, Ыа!!опа! 5ет!сопбис!ог Согр., Магсь 1975. !3. Раис Н., М!сгосогпршег 5о!(тчаге Ма!гез 1!в Оеьи1, Ергсггат, 78 — 84 (Ос(.
1974). 14. (Уе!вв С. 1),, МО5/Ъ.51 Ммгосотри1ег Согнпя, Е!ее!гоп!с Пгв!йп, 8, 66 — 71 (Арп(! 12, 1974), 15. Кпбан О. А., Н1иЬ-Ьече! Ьапяивие 5!трнпев М!сгосотри1ег Ргоигапип!пя, Е!ге!гон!св, 103 — !09 (Липе 27, 1974). УПРАЖНЕНИЯ 5.1. Объясните взаимосвязь между символическим и машинным языками.
5.2. Составьте алгоритм определения корней квадратного уравнения ахи+ Ьх+ с=О. 12 — 719 178 Глава з 5.3. Постройте блок-схему алгоритма упражнения 5.2. 5.4. Двоичное число можно умножить на два путем его сдвига на один разряд влево. Используя такой подход: а) составьте алгоритм умножения двух 4-разрядных двоичных чисел; б) постройте блок-схему этого алгоритма. 5.5.
Напишите программу на символическом языке микропроцессора 1п1е! 8008 (приложение Г), реализующую алгоритм упражнения 5.4, Примите, что используемые 4-разрядные числа хранятся соответственно в ячейках АА и ВВ, а результирующее 8-разрядное число должно быть записано по адресу СС. 5.6. Напишите программу решенья задачи, поставленной в упражнении 5.5, на машинном языке 1п1е! 8008. 5.7.
Напишите программу решения задачи, поставленной в упражнении 5.5, для микропроцессора 1п1е1 8080 (приложение Д). 5.8. Программирование часто включает задание пересылки данных между ячейками памяти. Напишите для микропроцессора 1п1е! 8008 макрокоманду пересылки информационного слова из одной ячейки памяти в другую. 5.9. Напишите подпрограмму преобразования числа в двоичнодесятичном коде 8421 в код Грея (табл. 3.9) для систем 1п1е! 4040 !п!е! 8080 5.10.
В аккумуляторе микропроцессора 8008 находится число С5м, а разряд переноса установлен в состояние 1. Каким будет содержимое аккумулятора и разряда переноса после выполнения следующих команд: а) А5!А А б) ОКА А в) ХцА А г) АР1 941в 5.11. Регистры микропроцессора 1п1е! 8080 находятся в следующем состоянии: регистр А содержит число 4Рм,  — 27нь 0 — 001в, Š— ОР|в, а в ячейке ОООРм записано число 2Р1в.
Последующая программа начинается с ячейки 0100м. АРР В АРС М РАА МОЧ М', А Программное обеспечение 179 Определите содержимое всех регистров и ячеек памяти после записи в них новой информации. Каково содержимое счетчика команд после выполнения команды МО'ч'У 5.12. Данные часто передаются в ЭВМ блоками. При атом возникновение ошибок контролируется путем суммирования слов блока по модулю п и последующего сравнения полученного результата с последним словом блока (контрольной суммой).
Рассмотрим систему, передающую данные для 1п1е1 8080. Передается блок из 24 8-разрядных слов. Первым словом в блоке всегда является «Забой» (РР1« для кода АЯС11 при проверке на отсутствие знака). Последнее слово блока — контрольная сумма по модулю 256. Напишите программу, которая бы осуществляла чтение информационных слов, их проверку по контрольной сумме и выдачу сигнала 01~а в устройство «порт О» (рог1) в случае ошибки. 5.13. Рассмотрим работу микро-ЭВМ по подготовке ведомостей подоходного налога. Система автоматически переходит на очередное поле ведомости, считывает входные данные с клавишного пульта, выполняет необходимые арифметические операции и печатает соответствующие сведения на бланке подоходного налога.
Предположим, что система считала различные статьи поступлений и вычислила округленный общий доход. Напишите программу вывода тридцати пробелов и печати 7-значного числа ХХХХХ.ХХ, наибольшая значащая цифра которого соответствует символическому адресу 1ЫСОМЕ. Телетайп (использующий 7-разрядный код АЬСП с проверкой на отсутствие знака) соединен с устройством «порт О» посредством преобразователя параллельного кода в последовательный.
Состояние интерфейса можно определить по разряду 0 слова, вводимого с устройства «порт 1». Используйте мнемонику 1п1е1 8080. 12' Глава 6 ИНТЕРФЕЙС И ПЕРИФЕРИЙНЫЕ УСТРОЙСТВА 6.1. ВВЕДЕНИЕ Микро-ЭВМ вступают во взаимодействие с внешней средой при помощи периферийных устройств (устройств ввода-вывода). К числу наиболее часто используемых устройств такого рода относятся телетайпы, аналого-цифровые и цифра-аналоговые преобразователи, устройства считывания с бумажной ленты н ленточные перфораторы, дисплеи, кассетные накопители на магнитной ленте и память на дисках. Для подсоединения к микро-ЭВМ одного или нескольких устройств ввода-вывода (УВВ) каждому устройству требуется схема сопряжения, называемая интерфейсом ееода-вывода. Интерфейс необходим для преобразования информации, передаваемой от периферийного устройства в ЭВМ и обратно. Кроме того, при помощи интерфейса ЭВМ получает информацию о состоянии устройств (например, «Готово», «Занято») и устраняет любые временнйе расхождения между работой ЭВМ и периферийного устройства 111.
Для интерфейса ввода-вывода характерны следующие четыре функции: буферирование; дешифрирование адреса, или выбор устройства; дешифрирование команды и синхронизация и управление (21. Буферирование необходимо для синхронизации обменов данными между процессором и периферийными устройствами. Де. шифрирование адреса требуется для выбора конкретного УВВ в системах, использующих несколько периферийных устройств. Дешнфрнрование команды производится для устройств, которые, кроме передачи данных, выполняют и другие действия, например обратную перемотку ленты.
И наконец, при реализации любой из перечисленных функций необходимы синхронизация н управление процессами. Обмен данными, между микро-ЭВМ и периферийными устройствами бывает двух видов: программно управляемая передача данных и передача данных с пропуском цикла [3 — 61. При програм. мно управляемой передаче обменом данных (1 слово за 1 период) управляет специальная программа, выполняемая иа микро-ЭВМ. Передачей с пропуском цикла, нли передачей при прямом доступе Иигерфепс и лериферийиые устройства 181 Яанус веРеЗ Юа е ьп леРО~РеРиан е устрастй ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! Рис. 6.!. Структурная схема типичного интерфейса при программно-управляемой передаче данных.
к памяти (ПДП), которая используется для непрерывной передачи большого блока данных, управляет периферийное устройство. Программно управляемые передачи данных применяют во всех микро-ЭВМ. Структурная схема типичного интерфейса для этого случая показана на рис. 6.1. Для того чтобы осуществить ввод данных от одного из периферийных устройств, макрокоманда ввода-вывода посылает соответствующий приказ на дешифратор устройства через шину управления. В результате дешифратор выбирает определенный канал мультиплексора (равд. 6.5); каждый канал имеет необходимое количество информационных подканалов в соответствии с выходом периферийного устройства.
Далее мнкро-ЭВМ читает и обрабатываетинформацию о состоянииУВВ с целью проверки, готово ли устройство (т. е. не занято ли обработкой предыдущей команды ввода-вывода). Состояние периферийного устройства обычно определяется в интерфейсе при помощи триггера, называемого 4>лажком. Если устройство готово, соответствующий канал мультиплексора открыт и данные передаются в ЭВМ (например, в аккумулятор) через шину данных В большинстве систем мультиплексор состоит из группы логических схем, соединяющих шину данных с выходом каждого периферийного устройства. Эти схемы, имеющие трехуровневый выходной сигнал (равд.
2.6), используются для мультиплексной передачи данных через шину данных. Поскольку такие логические схемы в запертом состоянии обладают очень высоким полным сопротивлением, выход каждой из них можно непосредственно подсоединить к шине данных. В этом случае можно не учитывать харак- 182 Глава 6 терное для обычных логических вентилей действие нагрузки, однако необходимо осуществлять выбор соответствующих линий управления.
При передаче данных периферийному устройству по команде ввода-вывода на дешифратор устройства поступает приказ выбрать соответствующий канал демультиплексора. Далее проверяется состояние периферийного устройства и, если последнее готово, данные передаются от ЭВМ на это устройство через группы фиксаторов (равд. 2.4) демультиплексорного канала. Так как скорость выполнения операций большинства периферийных устройств значительно меньше быстродействия микро-ЭВМ, для запоминания информации шины до завершения обмена с периферийным устройством используются фиксаторы.
Наличие фиксаторов предотвращает ошибки, которые могли бы возникнуть из-за различия в скорости выполнения операций процессором и периферийным устройством. Логические схемы, входящие в состав мультиплексора и демультиплексора, позволяют осуществлять обмен данными с различными периферийными устройствами посредством единственной шины данных. Такой метод. обмена называют обменом по групповой шине. В случае передачи данных при прямом доступе к памяти (ПДП) обменом данными полностью управляют при помощи технических средств. По сравнению с программно управляемой передачей усложняется интерфейс.