Чтобы команда содержала в явном виде всю необходимую информацию о задаваемой операции, она должна, как это показано на (рис. 29, б), содержать следующую информацию: Ai, А2 - адреса операндов, А3 т адрес результата, А4щ адрес следующей команды (принудительная адресация команд).
Такая структура приводит к большой длине команды (например, при М= 500, S 4 Гб длина команды — 137 бит) и неприемлема для прямой адресации операндов основной памяти. В компьютерах с RISC-архитектурой четырехадресные команды используются для адресации операндов, хранящихся в регистровой памяти процессора.
Можно установить, что после выполнения данной команды, расположенной по адресу К (и занимающей L ячеек), выполняется команда из {К + L) - й ячейки. Такой порядок выборки команды называется естественным. Он нарушается только специальными командами передачи управления. В таком случае отпадает необходимость указывать в команде в явном виде адрес следующей команды.
В трехадресной команде (рис. 29, в) первый и второй адреса указывают ячейки памяти, в которых расположены операнды, а третий определяет ячейку, в которую помещается результат операции.
Можно условиться, что результат операции всегда помещается на место одного из операндов, например первого. Получим двухадресную команду (рис. 29, г), т. е. для результата используется подразумеваемый адрес.
В одноадресной команде (рис. 27, д) подразумеваемые адреса имеют уже и результат операции, и один из операндов. Один из операндов указывается адресом в команде, в качестве второго используется содержимое регистра процессора, называемого в этом случае регистром результата, или аккумулятором. Результат операции записывается в тот же регистр.
Наконец, в некоторых случаях возможно использование безадресных команд (рис. 29, е), когда подразумеваются адреса обоих операндов и результата операции, например при работе со стековой памятью.
С точки зрения программиста, наиболее естественны и удобны трехадресные команды.
Однако из-за необходимости иметь большее число разрядов для представления адресов основной памяти и кода операции длина трехадресной команды становится недопустимо большой и ее не удается разместить в машинном слове. Следует отметить, что очень часто в качестве операндов используются результаты предыдущих операций, хранимые в регистрах машины. По указанным причинам в современных ЭВМ применяют трехадресные команды для адресации регистров. Обычно в ЭВМ используется несколько структур и форматов команд.
Приведенные на (рис. 29) структуры команд достаточно схематичны. В действительности адресные поля команд большей частью содержат не сами адреса, а только информацию, позволяющую определить действительные (исполнительные) адреса операндов в соответствии с используемыми в командах способами адресации.

Рис. 29. Структуры команд:
а — обобщенная; б - четырехадресная; в — трехадресная;
г - двухадресная; д — одноадресная; е—безадресная
2.3. Отладка разработанной программы
ЯДРО 1
Начало чикла обработки начальных данных; Чтение первого байта пакета начальных данных, где заложено идентификация сети (ACARS или ATN);3) Сопоставить данные первого байта пакета с mask, где mask играет роль объявленной переменной, и служит для заполнения недостающих бит
значениями «О»;
менная, служит идентификатором сети ACARS; В случае если функция If-else дает положительный результат, следующая обработка данных передается на алгоритм ACARS:
- Модем постоянно находится в режиме ожидания прерывания сообщения CPDLC. В то время, пока такое сообщение не поступило, ATSU работает в режиме широковещательной выдачи информации (ADS-B) о категории объекта, его идентификационном номере, и координат в виде широты и долготы. После передачи каждого из перечисленных параметров ATSU обращается к обработке прерывания CPDLC, так как наземная станция в любой момент времени может обратиться к бортовому оборудованию с требованием принять или передать какое-либо сообщение по линии связи «диспетчер УВД-пилот». Если такого запроса от наземной станции не поступало, то ATSU продолжает работать в режиме ADS-B, выдавая следующий параметр. Как только поступит запрос от наземной станции о необходимости провести связь в режиме CPDLC, ATSU переходит из режима ADS-B в режим CPDLC. В этом режиме в первую очередь оценивается категория срочности сообщения. Это сделано в связи с тем, что возможно наземный центр УВД запросит обработку сразу нескольких сообщений, при этом приоритет их обработки расставляется ATSU исходя их данных дешифрации кода срочности, который в обязательном порядке включается в каждое сообщение CPDLC. В первую очередь обрабатываются сообщения с наивысшей срочностью. Даже если в несколько сообщений уже ожидают очередь на обработку, вновь поступившее сообщение с более высокой срочностью будет иметь приоритет.
В случае если функция If-else дает отрицательный результат, следующая обработка данных передается на алгоритм ATN, где происходит следующие: полученные данные обработать функцией If-else, где проходит сопоставление полученных данных и mask 2, где Mask 2 объявленная переменная, служит идентификатором сети ATN.
В случае если функция If-else дает положительный результат:
- прочитать 1 байт субпакета ATN, где заложен идентификатор полученного сообщения (команда или сообщение); полученные данные передаются на функцию If-else, в случае если функция If-else дает положительный результат, данные обрабатываются как сообщение: о дочитать остальные данные с пакета (где заложено основная часть сообщения), обработать сообщение, для читабельного вида, передать на дисплей (КВС), отправить отчет о получении сообщения в центр УВД.
В случае если функция If-else дает отрицательный результат: передать данные на функцию If-else, где происходит сопоставление с объявленными переменными. В данном случае объявленные переменные играю роль команд заложенных в начальных данных программы. В случае если функция If-else дает положительный результат:
- дочитать остальные данные с пакета (где заложено основная часть команды); обработать команду;
- передать данные об исполнении команды на дисплей (КВС); Отправить отчет работы команды в центр УВД [3].
В случаее сли функция If-else дает отрицательный результат:
- данный пакет содержит ошибку (FAULT); Отправить отчет в центр УВД об ошибке[3].
В случае если функция If-else дает отрицательный результат:
- данный пакет содержит ошибку (FAULT); отправить отчет в центр УВД об ошибке[3].
После всех обработок программа возвращается в начала цикла [3].
Отчет об отправке происходит следующим образом:
- данные попадаю на семафор, в случае если семафор открыт,
данные передаются на параллельный поток обработки УВД; если семафор находиться в закрытом состоянии, данные пере-
даются в начало чикла отправки отчета.
ЯДРО 2
Ядро 2 постоянно считывает данные с параллельного потока, и отправляет их на семафор. В случае если семафор открыт, ядро 2 занимается передачей данных в центр УВД, если семафор закрыт, это означает что, ядро 2 отправляет сообщение (занято).
Разработанный алгоритм программы приведен на (рис. 30).

ГЛАВА III. ЭКОНОМИЧЕСКОЕ ОБОСНОВАНИЕ
3.1 Расчет экономической эффективности разработки
I. Стадия производства
11 1 | Дополнительные капитальные вложения в основные фонды, тыс. сум. | 700 |
2 | Дополнительные капитальные вложения в НИОКР, тыс. сум. | 2000 |
3 | Годовой объём выпуска оборудования, ист/год | 10000 |
4 | Трудоёмкость работ, нормо-ч | 3000 |
5 | Средний разряд работ | 400 |
6 | Отпускная цена базового оборудования выше(+)/ ниже(–) цены нового оборудования на% | -1000 |
Материалы и запчасти
Наименование материала или комплектующего изделия | Единицы измерения | Цена за единицу, сум | Норма расхода на изделие |
микросхемы 78LC16M8A2MT | Шт. | 30000 | 4 |
микросхемы М27С256В | Шт. | 32000 | 8 |
микросхемы 74АС245 | Шт. | 32000 | 16 |
микросхемы CMD 5962-96902 | Шт. | 30000 | 4 |
микросхемы NANDO ID | Шт. | 30000 | 1 |
микросхема АТ28С010 | Шт. | 35000 | 1 |
микросхема Intel Pentium 80503С | Шт. | 150000 | 1 |
Плата VOLCANO AIRBUS | Шт. | 2500000 | 1 |
Плата FPGA SX-A | Шт. | 2500000 | 1 |
Припой ПОС-61 | Г. | 1000 | 20 |
Текстолит | м2 | 200000 | 0.02 |
II. Стадия эксплуатации
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |


