Реализация ветвлений и циклов на ассемблере AVR

Методика построения регистровой модели и карты памяти для программной реализации ветвлений и циклов. Разработка приложения для вычисления системы математических уравнений для однобайтных и двухбайтных операндов на языке программирования ассемблер.

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

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

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

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

13

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

Реализация ветвлений и циклов на ассемблере AVR

1. Цель работы

Изучение реализации ветвлений и циклов на языке ассемблера.

2. Вариант задания

3. Задание

Вычислить на ассемблере заданное выражение. Написать две программы:

1) для однобайтных операндов;

910=916

2810=1C16

1910=1316

1210=0C16

Таблица 1 - Карта памяти

Переменная

Адрес

X

0x0060

Z

0x0061

Y

0x0062 - 0x0063

Таблица 2 - Регистровая модель

Регистр

Назначение

R16

Промежуточное хранение переменной X

R17

Промежуточное хранение переменной Z

R18

Промежуточное хранение переменной C(9)

R19

Промежуточное хранение переменной C(28)

R20

Промежуточное хранение переменной C(19)

R21

Промежуточное хранение переменной C(12)

Код программы

Рис. 1

Результат при x=1, z=40

Y=40-1-1-19=19

4010=2816

1910=1316

Рис. 2

Результат при x=15, z=2

Y=15+2+2+12=31

1510=0F16

3110=1F16

Рис. 3

Результат при x=30, z=4

Y=30-4-4=22

3010=1E16

2210=1616

Рис. 4

2) для двухбайтных операндов (примем количество разрядов АЦП равным 12 бит).

0910=0916

2810=1C16

1910=1316

1210=0C16

Таблица 3 -Карта памяти

Переменная

Адрес

X

0x0060-0x0061

Z

0x0062-0x0063

Y

0x0064 - 0x0065

Таблица 4 - Регистровая модель

Регистр

Назначение

R16-R17

Промежуточное хранение переменной X

R18-R19

Промежуточное хранение переменной Z

R20-R21

Промежуточное хранение переменной C(9)

R22-R23

Промежуточное хранение переменной C(28)

R24-R25

Промежуточное хранение переменной C(19)

R26-R27

Промежуточное хранение переменной C(12)

Код программы

Рис. 5

Рис. 6

Результат при x=3, z=40

Y=40-3-3-19=15

1510=0F16

Рис. 7

Результат при x=17, z=3

Y=17+3+3+12=35

1710=1116

3510=2316

Рис. 8

Результат при x=34, z=5

Y=34-5-5=24

3410=2216

2410=1816

Рис. 9

Вариант задания

Задание. Вычислить на ассемблере заданное выражение. Написать две программы:

1) для однобайтных операндов;

Таблица 5 - Карта памяти

Переменная

Адрес

X

0x0060

Z

0x0061

N

0x0062

Y

0x0063 - 0x0064

Таблица 6 - Регистровая модель

Регистр

Назначение

R16

Промежуточное хранение переменной X

R17

Промежуточное хранение переменной Z

R18

Промежуточное хранение переменной N

R19

Промежуточное хранение переменной счетчикаi

R20-R21

Промежуточное хранение переменной Y

R22

Промежуточное хранение переменной C(1)

R23

Промежуточное хранение сложения(вычитания) чисел

Код программы

Рис. 10

Результат для x=5, z=1,n=20

1)15-2-1=12

2)12+15-2-2=23

3)23+15-2-3=33

4)33+15-2-4=42

5)42+15-2-5=50

6)50+15-2-6=57

7)57+15-2-7=63

8)63+15-2-8=68

9)68+15-2-9=72

10)72+15-2-10=75

11)75+15-2-11=77

12)77+15-2-12=78

13)78+15-2-13=78

14)78+15-2-14=77

15)77+15-2-15=75

16)75+15-2-16=72

17)72+15-2-17=68

18)68+15-2-18=63

19)63+15-2-19=57

20)57+15-2-20=50

2010=1416

5010=3216

Рис. 11

3) для двухбайтных операндов (примем количество разрядов АЦП равным 12 бит).

Таблица 7 - Карта памяти

Переменная

Адрес

X

0x0060-0x0061

Z

0x0062-0x0063

N

0x0064-0x0065

Y

0x0066 - 0x0067

Таблица 8 - Регистровая модель

Регистр

Назначение

R16-R17

Промежуточное хранение переменной X

R18-R19

Промежуточное хранение переменной Z

R20-R21

Промежуточное хранение переменной N

R22

Промежуточное хранение переменной счетчикаi

R23-R24

Промежуточное хранение переменной Y

R25

Промежуточное хранение переменной C(1)

R26

Промежуточное хранение сложения(вычитания) чисел

Код программы

Рис. 12

Рис. 13

Результат для x=5, z=1,n=20

1)15-2-1=12

2)12+15-2-2=23

3)23+15-2-3=33

4)33+15-2-4=42

5)42+15-2-5=50

6)50+15-2-6=57

7)57+15-2-7=63

8)63+15-2-8=68

9)68+15-2-9=72

10)72+15-2-10=75

11)75+15-2-11=77

12)77+15-2-12=78

13)78+15-2-13=78

14)78+15-2-14=77

15)77+15-2-15=75

16)75+15-2-16=72

17)72+15-2-17=68

18)68+15-2-18=63

19)63+15-2-19=57

20)57+15-2-20=50

2010=1416

5010=3216

Рис. 14

Вывод

ассемблер программный цикл однобайтный

В результате выполнения работы была изучена реализация ветвлений и циклов на языке ассемблера.

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

...

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

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

    контрольная работа [515,1 K], добавлен 20.01.2016

  • Изучение языка низкого уровня ассемблер для написания примера программы для 16 битного приложения. Разработка и реализация алгоритма поднесения чисел к степени чисел над полем за основанием 2 (mod 2). Иллюстрация техники создания DOS приложения.

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

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

    дипломная работа [276,6 K], добавлен 26.01.2011

  • Арифметические команды языка Assembler в архитектуре x86. Организация ветвлений и циклов в программах. Ввод строк с клавиатуры и команды пакетной обработки (строковые команды). Алгоритм вывода на экран в текстовом режиме с использованием средств BIOS.

    контрольная работа [18,0 K], добавлен 05.07.2014

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

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

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

    курс лекций [506,4 K], добавлен 03.05.2014

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

    отчет по практике [175,0 K], добавлен 30.09.2022

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

    презентация [187,9 K], добавлен 02.04.2014

  • Моделирование цифровых узлов комбинационного и последовательного типа. Арифметические команды. Манипуляции над битами. Совместное использование Ассемблер с другими языками программирования. Вывод на экран в текстовом режиме. Команды работы со строками.

    отчет по практике [1,7 M], добавлен 11.03.2014

  • Структурное программирование, схема алгоритма. Программа на языке Си для int, float. Подпрограмма ввода и вывода целых чисел на Ассемблере IBM. Тестирование и отладка, инструкция пользователя. Язык программирования Си (для int и float), этапы трансляции.

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

  • Анализ технического задания. Разработка программы по вычислению функции на языке ассемблер для микропроцессора Кр580ВМ80. Алгоритмы программного умножения, деления, сложения, вычитания и сдвига влево многобайтных чисел. Расчет времени работы программы.

    курсовая работа [88,2 K], добавлен 19.09.2012

  • Разработка и анализ алгоритмов с использованием электронных таблиц и прикладных программ Smath Studio, Microsoft Excel. Проверка алгоритма ветвления или выбора. Реализация циклов на примере вычисления определённого интеграла с заданной точностью.

    контрольная работа [1,0 M], добавлен 19.03.2016

  • Таблица тестовых наборов, код программы, скриншоты. Разработка программы вычисления заданного целочисленного выражения для данных в формате 16 бит. Вычисление принадлежности точки с заданными координатами заштрихованной области. Разветвления в С++.

    лабораторная работа [1,3 M], добавлен 23.11.2014

  • Классификация систем программирования. Специализированные редакторы, программы-компиляторы и исполнимый код. Разновидности Visual Basic. Версии Паскаля и его использование. Приложения на языке Java. Разработка программы для вычисления предельной ошибки.

    курсовая работа [34,0 K], добавлен 28.12.2009

  • Моделирование цифровых узлов комбинационного и последовательностного типа electronic work bench. Основы программирования на Ассемблере: арифметические команды, манипуляции над битами, строковые операции. Программирование с использованием пакета MASM.

    отчет по практике [1,9 M], добавлен 10.01.2015

  • Способ представления графа в информатике. Алгоритмы поиска элементарных циклов в глубину в неориентированных графах. Описание среды wxDev-C++, последовательность создания проекта. Руководство пользователю программы поиска и вывода на экран простых циклов.

    курсовая работа [783,2 K], добавлен 18.02.2013

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

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

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

    курсовая работа [153,9 K], добавлен 18.02.2013

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

    дипломная работа [4,3 M], добавлен 15.05.2012

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

    дипломная работа [1,4 M], добавлен 03.06.2014

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