~1 (Программирование в двоичных кодах), страница 2

2016-07-31СтудИзба

Описание файла

Документ из архива "Программирование в двоичных кодах", который расположен в категории "". Всё это находится в предмете "информатика" из , которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "рефераты, доклады и презентации", в предмете "информатика, программирование" в общих файлах.

Онлайн просмотр документа "~1"

Текст 2 страницы из документа "~1"

Обнуление области памяти. Программа пересылает нулевое содержимое какого либо регистра в ячейку памяти.

Адреса

Команды

Мнемоника команд

Комментарий

000

227

SUB A

Обнуление А

001

041

LXI H

002

011

B2

003

000

B3

004

167

MOV M,A

Обнуление ячейки памяти по адресу HL

005

043

INX H

Адрес следующей ячейки

006

303

JMP

Безусловный переход по адресу

007

004

B2

мл.байт

010

000

B3

ст.байт

Содержимое ячеек до выполнения программы:

Адрес

Содержимое

011

Xxx

...

Xxx

040

Xxx

Содержимое ячеек после выполнения программы:

Адрес

Содержимое

011

000

...

000

040

000

Программа №7

Режим задания команд с клавиатуры

Адреса

Команды

Мнемоника команд

100 200

166

HLT

Задание с клавиатуры

Команды

Мнемоника команд

303

JMP

200

B2

100

B3

Программа №8

Условные переходы. Программа позволяет изучить действие условных переходов. По адресу H=000,L=200 запишем число 002(соответствует нулевому значению всех флагов в регистре признаков), а по адресу H=000,L=004 – число 302(код команды условного перехода по ненулевому результату JNZ).

Адреса

Команды

Мнемоника команд

Комментарии

000

061

LXI SP

001

200

B2

002

000

B3

003

361

POP PSW

Извлечение из стека ССП

004

*

*

(JNZ,JZ,JNC,JC,JPO,JPE,JP,JM)

005

000

B2

006

000

B3

007

166

HLT

200

**

-

201

000

-

Варианты выполнения программы

Признак

Данные по адресу 004

Данные по адресу 200

Переход к адресу 000

302 (JNZ)

002 (z=0)

Есть

ноль

302 (JNZ)

102 (z=1)

Нет

312 (JZ)

102 (z=1)

Есть

322 (JNC)

002 (c=0)

Есть

перенос

322 (JNC)

003 (c=1)

Нет

332 (JC)

003 (c=1)

Есть

342 (JPO)

002 (p=0)

Есть

Четность

342 (JPO)

006 (p=1)

Нет

352 (JPE)

006 (p=1)

Есть

362 (JP)

002 (s=0)

Есть

Знак

362 (JP)

202 (s=1)

Нет

372 (JM)

202 (s=1)

Есть

Программа №12

Выбор максимального элемента массива.

Адрес

Команда

Мнемоника команды

Комментарий

000

041

LXI H

001

100

B1

002

000

B2

003

016

MVI C

Загрузка переменной цикла

004

005

B2

005

176

MOV A,M

Загрузка в А первого элемента

006

043

INX H

Переход к следующему элементу

007

276

CMP M

Если А>М С=0

А<М С=1

010

332

JC

Если А<М меняем местами

011

014

B2

012

000

B3

013

176

MOV A,M

Перенос в А нового максимума

014

015

DCR C

Уменьшение переменной цикла

015

302

JNZ

Если переменная цикла не равна 0 то все сначала

016

006

B2

017

000

B3

020

062

STA

Сохранение результата в памяти

021

150

B2

022

000

B3

023

166

HLT

Конец

2.Выполнение индивидуальных заданий

Программа №1

Упорядочить пятнадцать элементов массива по возрастанию.

Адрес

Команды

Мнемоника команды

Комментарии

000

016

MVI C

Число прохождений внешнего цикла 15-1=14=16(8)

001

016

B2

002

041

LXI H

Загрузка адреса первого элемента массива

003

100

B2

004

000

B3

005

026

MVI D

Число сравнений внутри главного цикла

006

016

B2

007

106

MOV B,M

Сохр. Первый из сравниваемых элементов в B

010

043

INX H

Формирование адреса второго ср-ого элемента

011

176

MOV A,M

Сохранение второго элемента в аккумуляторе

012

270

CMP B

Сравнение аккумулятора с регистром B.A>B => флаг C=0 и наоборот

013

322

JNC

Если C=1, то элементы расположены по возрастанию и выполнять перемену их местами не нужно(ком 016-021)

014

022

B2

След. Ячейка

015

000

B3

Делитель из памяти в В

016

160

MOV M,B

Перезапись первого элемента по адресу второго

017

053

DCX H

Сформировали адрес первого элемента

020

167

MOV M,A

Сохранили под адресом первого элемента второй

021

043

INX H

Адрес первого из сравниваемых в следующем цикле

022

025

DCR D

Уменьшение переменной внутреннего цикла

023

302

JNZ

Если переменная не равна нулю переход к следующей итерации

024

007

B2

025

000

B3

026

015

DCR C

Уменьшение переменной внешнего цикла

027

302

JNZ

Если переменная внешнего цикла не равна нулю то переходим к следующей итерации

030

002

B2

031

000

B3

032

166

HLT

Конец программы.

Программа №2.

Вывод с задержкой слов РЕПА И ГЕРБ на панель индикатора.

Адрес

Команда

Мнемоника команд

Комментарии

000

076

MVI A

Предварительная инициализация ППИ блока статической индикации

001

200

B2

002

323

OUT port

003

003

B2

004

323

OUT port

005

007

B2

006

004

INR B

Инициализация стека

007

002

STAX B

010

001

LXI B

011

220

B2

012

230

B3

013

007

RLC

014

006

MVI B

015

003

INX B

016

041

LXI H

Загрузка начального адреса в указатель памяти

017

200

B2

020

000

B3

021

176

MOV A,M

Вывод на блок статической индикации слова РЕПА

022

323

OUT port

023

000

B2

024

043

INX H

022

176

MOV A,M

023

323

OUT port

024

001

B2

025

043

INX H

026

176

MOV A,M

027

323

OUT port

030

002

B2

031

043

INX H

032

176

MOV A,M

033

323

OUT port

034

004

B2

035

315

CALL addr

Вызов подпрограммы

036

153

B2

037

000

B3

040

043

INX H

Вывод на блок статической индикации слова ГЕРБ

041

176

MOV A,M

042

323

OUT port

043

000

B2

044

043

INX H

045

176

MOV A,M

046

323

OUT port

047

001

B2

050

043

INX H

051

176

MOV A,M

052

323

OUT port

053

002

B2

054

043

INX H

055

176

MOV A,M

056

323

OUT port

057

004

B2

060

315

CALL addr

Вызов подпрограммы

061

153

B2

062

000

B3

063

303

JMP addr

Безусловный переход к команде по адресу, указанному в B2,B3

064

006

B2

065

000

B3

Подпрограмма, организующая задержку.

Адрес

Команды

Мнемоника команды

Комментарии

153

001

LXI B

Запись исходных данных в регистры B и C

154

377

B2

B2(C)

155

377

B3

B3(B)

156

005

DCR B

Уменьшение переменной внутреннего цикла

157

302

JNZ addr

Если переменная цикла не равна нулю переход к следующей итерации

160

156

B2

161

000

B3

162

015

DCR C

Уменьшение переменной внешнего цикла

163

302

JNZ addr

Если переменная цикла не равна нулю переход к следующей итерации

164

156

B2

165

000

B3

166

311

RET

Безусловный возврат из подпрограммы

Коды букв для вывода на семи сегментный индикатор

А

167

Б

175

Г

061

Е

171

Р

163

П

067

Выводы.

В ходе выполнения работы были получены навыки программирования МП-систем, система команд процессора комплекта серии К580 и принципы проектирования и отладки микроконтроллеров на основе МП. Программирование в машинных кодах позволяет прозрачно представить структуру МП и программного обеспечения.

Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5173
Авторов
на СтудИзбе
436
Средний доход
с одного платного файла
Обучение Подробнее