Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Практическая работа №1. Разработка линейных программ с использованием арифметических выражений





Разработка линейных программ с
использованием арифметических выражений

Цель:

Научиться разрабатывать линейные программы с использованием арифметических выражений.

Программное обеспечение: TASM, FAR

Оборудование: персональный компьютер, практикум, тетради для лабораторных работ.

Правила по технике безопасности: общие (приложение).

Литература:

Магда Ю. Ассемблер для процессоров Intel Pentium.

Голубь Н. Г. Искусство программирования на Ассемблере. Лекции и упражнения.

Время выполнения: 2 часа.

ВОПРОСЫ ВХОДНОГО КОНТРОЛЯ:

1. Перечислите арифметические операции.

2. Перечислите регистры процессора.

Над двоичными числами со знаком и без знака могут быть выполнены следующие действия: сложение, вычитание, умножение и деление.

Сложение двоичных чисел

В системе команд микропроцессора имеются три команды двоичного сложения:

1. Операция инкремента:

inc операнд

Означает увеличение значения операнда на 1.

2. Команда сложения:

add операнд_1, операнд_2

Принцип ее действия:

операнд_1 = операнд_1 + операнд_2

3. Команда сложения с учетом флага переноса cf:

adc операнд_1, операнд_2

Принцип действия команды:

операнд_1 = операнд_1 + операнд_2 + значение_ cf

Последняя команда сложения учитывает перенос единицы из старшего разряда. Когда в старшем разряде появляется единица, она переносится в бит cf флагового регистра.

Вычитание двоичных чисел

К командам вычитания относятся следующие:

1. Операция декремента:

dec операнд

Уменьшение значения операнда на 1.

2. Команда вычитания:

sub операнд_1, операнд_2

Принцип действия:

операнд_1 = операнд_1 – операнд_2

3. Команда вычитания с учетом заема (флага cf):

sbb операнд_1, операнд_2

Принцип действия:

операнд_1 = операнд_1 – операнд_2 – значение_ cf

Умножение чисел без знака и со знаком

Для умножения чисел без знака предназначена команда

mul сомножитель_1

В команде указан только один операнд-сомножитель. Второй операнд – сомножитель_2 задан неявно. Его местоположение фиксировано (например, для байта – в регистре al) и зависит от размера сомножителей. Так как в общем случае результат умножения больше, чем любой из его сомножителей, то его размер и местоположение должны быть тоже определены однозначно.

Для указания превышения результатом умножения размера регистра используются флаги переноса cf и переполнения of.

Для умножения чисел со знаком предназначена команда

imul операнд_1[, операнд_2, операнд_3]

Эта команда выполняется так же, как и команда mul. Отличительной особенностью команды imul является только формирование знака.

Если результат мал и умещается в одном регистре (то есть, если cf = of = 0), то содержимое другого регистра (старшей части) является расширением знака – все его биты равны старшему биту (знаковому разряду) младшей части результата.

В противном случае (если cf = of = 1) знаком результата является знаковый бит старшей части результата, а знаковый бит младшей части является значащим битом двоичного кода результата.

Деление чисел без знака и со знаком

Для деления чисел без знака предназначена команда

div делитель

Делитель может находиться в памяти или в регистре и иметь размер 8, 16 или 32 бит. Местонахождение делимого фиксировано и так же, как в команде умножения, зависит от размера операндов (например, для слова – в регистре ax). Расположение частного и остатка также фиксировано. Результатом команды деления являются значения частного и остатка.

Для деления чисел со знаком предназначена команда

idiv делитель

Для этой команды справедливы все рассмотренные положения, касающиеся команд и чисел со знаком.







Дата добавления: 2014-11-10; просмотров: 1036. Нарушение авторских прав; Мы поможем в написании вашей работы!




Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...


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


Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...


Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

Постинъекционные осложнения, оказать необходимую помощь пациенту I.ОСЛОЖНЕНИЕ: Инфильтрат (уплотнение). II.ПРИЗНАКИ ОСЛОЖНЕНИЯ: Уплотнение...

Приготовление дезинфицирующего рабочего раствора хлорамина Задача: рассчитать необходимое количество порошка хлорамина для приготовления 5-ти литров 3% раствора...

Дезинфекция предметов ухода, инструментов однократного и многократного использования   Дезинфекция изделий медицинского назначения проводится с целью уничтожения патогенных и условно-патогенных микроорганизмов - вирусов (в т...

СИНТАКСИЧЕСКАЯ РАБОТА В СИСТЕМЕ РАЗВИТИЯ РЕЧИ УЧАЩИХСЯ В языке различаются уровни — уровень слова (лексический), уровень словосочетания и предложения (синтаксический) и уровень Словосочетание в этом смысле может рассматриваться как переходное звено от лексического уровня к синтаксическому...

Плейотропное действие генов. Примеры. Плейотропное действие генов - это зависимость нескольких признаков от одного гена, то есть множественное действие одного гена...

Методика обучения письму и письменной речи на иностранном языке в средней школе. Различают письмо и письменную речь. Письмо – объект овладения графической и орфографической системами иностранного языка для фиксации языкового и речевого материала...

Studopedia.info - Студопедия - 2014-2026 год . (0.011 сек.) русская версия | украинская версия