Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЭВМ.doc
Скачиваний:
47
Добавлен:
16.04.2015
Размер:
196.61 Кб
Скачать

4. Описание средств вычислительной техники

1. Компьютер Intel Pentium 4, 1500 Mhz.

2. Память 192 Mb RAM.

3. Видеокарта Rodeon, 64Mb видеопамяти.

4. Монитор Samsung SyncMaster 550b с разрешением 1024x768 HiColor.

5. Стандартная клавиатура.

6. "Мышь".

7. Windows 2000Me.

5. Выводы

  1. Была составлена программа формирования массива модулей чисел исходного массива (с адреса 500016), формирующая результат в массиве с адреса 600016. Программа располагается в памяти с ячейки 400016.

  2. Возможны другие варианты реализации алгоритма данной задачи.

1. Например, можно было бы не использовать пару H, L во второй части программы; тогда нужно было бы рассматривать сначала младший байт исходного числа, инвертировать его, прибавлять 1, смотреть, нет ли переноса; если бы он был, пришлось и инвертировать старший байт, и отнимать от него 1, а потом все записать. Использование пары H, L значительно упрощает эту процедуру: мы заносим инвертированные байты в эти регистры, а потом от этой пары прибавляем 1.Следовательно, программа получается на несколько байт меньше и нагляднее. 2. Опять таки, если не использовать пару H, L можно было бы также сначала загрузить младший байт исходного числа, отнять 1 (команда SUI), заслать содержимое А и флагов в стек (PUSH PSW), инвертировать содержимое А, сделать переход к старшему байту числа, извлечь содержимое регистра флагов из стека, загрузить старший байт, отнять 00h, но с учетом того, был ли заем, инвертировать его и записать. 3. Можно было бы построить программу так, чтобы мы начинали не со старшего байта, а с младшего, и тогда нам пришлось бы делать лишние преобразования в первой части программы, но зато была бы короче вторая: следовательно, эти пути решения данного алгоритма практически равносильны.

  1. Часть команд можно заменить другими, например, когда мы проверяли знак числа, можно было бы использовать также команды ADI 80h (сложение содержимого А с 80h) и RAL (циклический сдвиг содержимого А на один разряд влево). Инвертировать байты можно было бы с помощью команды CMA, но команда XRI показывает саму сущность инвертирования, так что я считаю ее более приемлемой для данного случая.

Результаты выполнения программы

Адрес16

Константа16

Адрес16

Константа16

6000

EB 3F

600А

DE 4A

6002

00 59

600С

EE 65

6004

01 00

600Е

02 07

6006

61 3F

6010

11 OD

6008

00 00

6012

D0 7F

6. Литература

  1. Система команд микроЭВМ СМ-1800 и основы программирования в кодах: Метод. указания/СпбТИ., 1992. Составители Р.И. Белова и В.Н. Гиляров.

  1. Майоров В.Г., Гаврилов А.И. «Практический курс программирования микропроцессорных систем» - М.: Машиностроение. 1989.

  1. Операционная система СПО-1800. Монитор.: Метод. указания к лабораторной работе/СпбТИ., 1987. Составители Р.И. Белова, В.Н. Гиляров, Н.Н. Парамонова.

  1. Коган В.М. «Электронные вычислительные машины и системы: Уч. пособие для вузов. – 3-е издание, перераб. и доп. – м.: Энергоатомиздат. 1991.

1Такой перенос называется круговым или циклическим.

Соседние файлы в предмете Основы ЭВМ