Арифметико-логические операции

Приобретение навыков программирования арифметико-логических операций командами микроконтроллера. Характеристика блок-схемы алгоритма и исходного кода программы. Влияние арифметических и логических указаний командной строки МК Intel 8051 на флаги.

Рубрика Программирование, компьютеры и кибернетика
Вид лабораторная работа
Язык русский
Дата добавления 30.11.2016
Размер файла 102,5 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Лабораторная работа

По дисциплине «Микропроцессоры и Микропроцессорные системы»

По теме: Арифметико-логические операции

Задание по лабораторной работе.

Пусть в памяти программ, начиная с ячейки ADR2 расположена таблица кодов длиной N (Xi, i=1,2,...,N, формат - байт)

Записать на языке ассемблера МК51 программу, которая выполняет вычисление заданной функции F над этими кодами. Результат вычисления разместить в регистре B. Программа должна начинаться с ячейки ADR1. Варианты заданий приведены в таблице 4.

Задание по лабораторной работе:

Таблица 1. Таблица вариантов заданий

Номер

ADR1

ADR2

N

Функция F

13

2D8

3A1

7

Сумма(Xi)/\X3

1.Блок-схема алгоритма программы;

2. Исходный код программы:

org 0

jmp Start

org 02D8h

org 03A1h;

Start:

mov R2,#07h ; задаем счетчик циклов

mov R3,#0 ; задаем начальное значение суммы

mov DPTR,#2D8h ; задаем базу массива

mov R4,#0 ; задаем индекс элемента

cycle:

mov A,R0 ; заносим в А индекс элемента массива

movc A,@A+DPTR ; извлекаем в А текущий элемент массива

add A,R3 ; текущая сумма плюс текущий элемент массива

mov R3,A ; новая сумма

djnz R2, cycle ; если не все элементы процесс повтори

mov A,R3 ; в А заносим сумму

mov B,#07h ; в В число элементов

div AB ; вычисляем значение функции F

mov B,A ; пересылка значения функции F в регистр В

jmp $ ; остановка программы

end

Контрольные вопросы:

1. Краткая характеристика арифметических команд.

В данную группу входят 24 команды, краткое описание которых приведено в таблице. Из нее следует, что микроЭВМ выполняет достаточно широкий набор команд для организации обработки целочисленных данных, включая команды умножения и деления.

2. Краткая характеристика логических команд

В этой группе 25 команд, их краткое описание приведено в таблице. Нетрудно видеть, что эти команды позволяют выполнять операции над байтами: логическое И (/ ), логическое ИЛИ ( /), исключающее ИЛИ ((+)), инверсию (NOT), сброс в нулевое значение и сдвиг.

3. Влияние арифметических и логических команд на флаги.

По результату выполнения команд ADD, ADDC, SUBB, MUL и DIV устанавливаются флаги CY, AC, OV и P регистра PSW. Флаг CY устанавливается при переносе из разряда D7, т. е. в случае, если результат не помещается в восемь разрядов; флаг АС устанавливается при переносе из разряда D3 в командах сложения и вычитания и служит для реализации десятичной арифметики. Этот признак используется командой DAA. Флаг OV устанавливается при переносе из разряда D6, т. е. в случае, если результат не помещается в семь разрядов и восьмой не может быть интерпретирован как знаковый. Этот признак служит для организации обработки чисел со знаком. Наконец, флаг Р устанавливается и сбрасывается аппаратно. Если число единичных бит в аккумуляторе нечетно, то Р = 1, в противном случае Р = 0.

команда микроконтроллер программа арифметический

Вывод

В результате лабораторной работы я приобрел навыки программирования в кодах микроконтроллера с использованием логических и арифметических команд МК Intel 8051.

Размещено на Allbest.ru

...

Подобные документы

  • Понятие двоично-десятичного кода (ДДК), его получение и использование. Изучение арифметико-логических устройств, использующихся для обработки ДДК. Алгоритмы сложения, вычитания, умножения и деления ДДК при помощи арифметико-логических устройств.

    контрольная работа [145,5 K], добавлен 05.09.2010

  • Теоретическое изучение системы проведения арифметических операций над двоичными числами. Создание описания операций умножения и блок-схемы алгоритма её выполнения. Определение набора управляющих сигналов и синтез схемы арифметико-логического устройства.

    курсовая работа [169,3 K], добавлен 25.12.2012

  • Операционный блок микропроцессора, арифметические операции с целыми операндами. Пути увеличения производительности арифметико-логического устройства за счет параллельной обработки различных команд выполняемой программы. Сумматор частичных произведений.

    контрольная работа [56,5 K], добавлен 05.09.2010

  • Исследование арифметических, логических и вспомогательных операций, выполняемых микропроцессором. Построение блок-схемы инициализации резидентной программы и тела резидента. Характеристика основных особенностей написания программы на языке ассемблера.

    лабораторная работа [67,8 K], добавлен 20.11.2012

  • Представление данных в цифровых автоматах, методы контроля их работы. Построение алгоритма реализации численного метода "быстрой сортировки", построение кода и блок-схемы Хемминга. Выполнение арифметических и логических исчислений с целыми числами.

    курсовая работа [98,7 K], добавлен 22.12.2009

  • Проектирование арифметико-логических устройств (АЛУ). Отладка описания логических схем на языке VHDL. Классификация АЛУ по способу представления чисел, характеру использования элементов и узлов. Список стандартных функций АЛУ, его описание на языке VHDL.

    лабораторная работа [633,4 K], добавлен 11.03.2014

  • Применение математических методов для решения логических задач и построения логических схем. Определение и реализация булевых функций. Основные схемы функциональных элементов. Программируемые логические матрицы. Правила составления таблицы истинности.

    курсовая работа [821,6 K], добавлен 19.03.2012

  • Технология программирования задач для операторных и функциональных языков программирования, разработка алгоритма и отладка программы. Трансляция исходного текста, компоновка программы, ее выполнение с целью определения логических ошибок и тестирование.

    курсовая работа [336,6 K], добавлен 24.04.2010

  • Понятие и использование командной строки. Открытие командной строки. Команды, выполняемые с помощью командной строки. Как выполнить команду с повышенными привилегиями. Изменение внешнего вида окна командной строки с помощью параметров командной строки.

    презентация [948,2 K], добавлен 22.10.2014

  • Разработка структурной схемы вычислительного устройства, выбор системы команд и определение форматов. Разработка алгоритма командного цикла, выполнения арифметических и логических операций. Проектирование операционного автомата, устройств управления.

    курсовая работа [2,8 M], добавлен 15.05.2014

  • Основные понятия алгебры логики. Логические основы работы ЭВМ. Вычислительные устройства как устройства обработки информации. Основные формы мышления. Обзор базовых логических операций. Теоремы Булевой алгебры. Пути минимизации логических функций.

    контрольная работа [62,8 K], добавлен 17.05.2016

  • Условная функция. Логические выражения. Вложенные логические функции ЕСЛИ. Особенности записи логических операций в табличных процессорах: сначала записывается имя логической операции (И, ИЛИ, НЕ).

    реферат [7,9 K], добавлен 17.11.2002

  • Программирование логических игр с помощью подходов СИИ. Методы работы с Windows Forms в языке С#, алгоритм поиска в пространстве состояний. Формализация дерева состояний. Описание использованных алгоритмов. Иерархическая схема и блок-схемы программы.

    курсовая работа [1,7 M], добавлен 01.12.2015

  • Разработка алгоритма выполнения операций умножения двоичных чисел в формате расширенной точности на сумматоре обратного кода. Преобразование входной строки в десятичное число. Разработка алгоритма арифметической операции. Тестирование программы-эмулятора.

    курсовая работа [119,1 K], добавлен 24.06.2012

  • Кодирование символьной и числовой информации. Основные системы счисления. Двоичная система счисления. Устройства вывода информации. Правила выполнения арифметических операций. Логические основы построения, функциональные узлы ЭВМ. Синтез логических схем.

    презентация [1,2 M], добавлен 08.11.2016

  • Характеристика графических возможностей пакета MS Excel. Сущность MS Accses. Анализ систем счисления и арифметические операции над ними. Модифицированный, дополнительный и обратный коды. Принципы построения логических схем, изучение логических операций.

    курсовая работа [2,3 M], добавлен 25.03.2015

  • Ознакомление со структурой языка программирования Turbo-Pascal 7.0, его алфавитом, выражениями и простейшими конструкциями (метками, идентификаторами). Способы описания арифметических, вещественных, логических и символьных операций в программной среде.

    реферат [68,2 K], добавлен 07.02.2011

  • Запоминающие устройства компьютера. Создание системы памяти. Характеристика микросхем динамических запоминающих устройств. Выполнение арифметических, логических или служебных операций. Ярусно-параллельная форма алгоритма. Степень и уровни параллелизма.

    презентация [2,4 M], добавлен 28.03.2015

  • Разработка на языке программирования С++ программы анализа логических дисков. Интерфейс, диалог с пользователем. Определение текущего диска, его размера, занятого и свободного места, информации о кластерах. Организация программы с использованием меню.

    курсовая работа [182,1 K], добавлен 22.10.2012

  • Исследование принципа работы основных логических элементов цифровых устройств. Описания вычислительных машин непрерывного и дискретного действия. Инверсия конъюнкции, дизъюнкции и равнозначности. Разработка программы, реализующей логические операции.

    практическая работа [230,8 K], добавлен 25.03.2015

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.