Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Ввод—вывод, маскирование данных и организация условных переходов
Цель работы: исследование методов подключения и организации обмена информацией с простейшими устройствами ввода — вывода. Изучение программных способов маскирования данных и организации условных переходов в микро-ЭВМ.
Краткие сведения из теория К командам ввода — вывода МП 8086 относятся команды IN<A1> и OUT<A1>. При выполнении команды IN<A1> микро-ЭВМ считывает число из входного устройства с адресом (A1) (A1) и записывает его в аккумулятор. При выполнении команды OUT<A1> МП 8086 записывает число из аккумулятора в выходное устройство с адресом (А1) (А1). Так как адрес устройства указывается в одном байте, то с помощью этих команд микро-ЭВМ может обмениваться информацией не более чем с 256 внешними устройствами. Обмен данными между микро-ЭВМ и внешними устройствами может вызываться как в определенных местах в программе, так и по сигналам прерывания. В последнем случае подпрограмма обмена данными с внешним устройствами будет вызываться за счет перевода микро-ЭВМ в режим обслуживания прерывания. Простейшая программа (программа 8.6) перезаписи числа со входного устройства (с адресом 20) в выходное устройство (с адресом 30) имеет следующий вид: Программа 8.6 Адрес Машинный код Метка Мнемокод Комментарии 0800 DB 20 CNT IN 20 записать число из входного устройства с адресом 20 в аккумулятор 0802 D3 30 OUT 30 записать число из аккумулятора в выходное устройство с адресом 30 0804 С3 0008 JMP СNT идти на CNT Организация условных переходов в микро-ЭВМ осуществляется с помощью регистра признаков МП 8086. Управление потоком данных программы Управление потоком программы - очень важная вещь, это - то, где ваша программа может принимать решения согласно некоторым условиям. Безусловный переход Основная команда, которая передает управление к другому пункту в программе - JMP. Основной синтаксис команды JMP: JMP label Чтобы объявлять метку в вашей программе, только напечатают ее имя и добавьте ":" к концу, метка может быть любая символьная комбинация, но это не может начинаться с числа, например имеются 3 законных определения метки: label1: Метка может быть объявлена на отдельной линии или перед любой другой командой, например: X1: MOV AX, 1 x2: MOV AX, 2 Имеется пример команды JMP: ORG 100h MOV AX, 5; set AX to 5.MOV BX, 2; set BX to 2. JMP calc; go to 'calc'. back: JMP stop; go to 'stop'. calc:ADD AX, BX; add BX to AX.JMP back; go 'back'. stop:RET; return to operating system.END; directive to stop the compiler.
Конечно имеется более легкий способ вычислить некоторых из двух чисел, но это - все еще хороший пример команды JMP. Поскольку Вы можете видеть от этого примера JMP, способен передать управление, и вперед и назад. Это может подскакивать где-нибудь в текущем сегменте кода (65,535 байтов). Date: 2016-07-18; view: 647; Нарушение авторских прав |