Рассчитай точную стоимость своей работы и получи промокод на скидку 200 ₽
Найди эксперта для помощи в учебе
Найти эксперта
+2
выполнено на сервисе Автор24
Студенческая работа на тему:
КОНТРОЛЬНАЯ РАБОТА №2 Вариант 5 Написать программу с использованием языка Turbo Assembler
Создан заказ №1769700
23 февраля 2017

КОНТРОЛЬНАЯ РАБОТА №2 Вариант 5 Написать программу с использованием языка Turbo Assembler

Как заказчик описал требования к работе:
Контрольная работа №2 стр 173, вариант 5. Выполнить все рекомендации.
Фрагмент выполненной работы:
КОНТРОЛЬНАЯ РАБОТА №2 Вариант 5 Написать программу с использованием языка Turbo Assembler, в которой пользователь вводит числа, производит с ними какие-либо арифметические или логические операции (в зависимости от варианта) и выводит результат на экран. Программа высылается в составе исполняемого файла и исходных текстов. Каждая строка программы должна сопровождаться подробными комментариями. Задание Пользователь вводит два числа А и B в десятичном виде через процедуру, осуществляя передачу результата ввода через общую область памяти. (работа была выполнена специалистами author24.ru) Программа должна: Посчитать С=(А+В)/4. Сбросить пятый бит числа С, если он установлен. Расчет должен быть выполнен с использованием макроопределения. Вывести на экран число С и все промежуточные числа в двоичном виде, с использованием процедуры, в которую осуществляется передача параметров через общую область памяти. Решение: Разработаем программу для решения задачи которая будет состоять из одного макроса для вычисления выражения, главной процедуры и двух подпрограмм (процедур) – ввода числа в десятичном виде и вывода числа на экран в двоичном виде, которые для достижения передачи параметров через общую область памяти вынесем в отдельный модуль. Заданием не определяется разрядность чисел или их диапазон, поэтому примем, что все числа A, B, C – целые однобайтовые числа со знаком. Разработаем блок-схемы для выделенных процедур. Блок-схема основной процедуры и процедуры ввода числа Блок-схема процедуры вывода числа в двоичном виде Исходный код главного модуля программы – файл «CON2.ASM» ;------------------------------------------------------------------- ; Макрос вычисления выражения С=(А+B)/4 ; и сброс 5 бита результата С ;------------------------------------------------------------------- Calc_C macro A, B, C MOV AL, A; AL <- A ADD AL, B; AL <- A+B MOV Sh, AL; запись суммы в общую память CALL Write; вывод ее на экран MOV CL, 4; CL <- 4 - делитель CBW; AX <- AL - расширяем до слова IDIV CL; AL <- AX / CL = (A+B)/4 MOV Sh, AL; запись результата деления в общую память CALL Write; вывод его на экран AND AL, 0DFh; сброс пятого бита, если он был установлен MOV C, AL; С <- результат MOV Sh, AL; запись результата в общую память CALL Write; вывод результата на экран endm assume cs: code, ds: data, ss:stk code segment ; сегмент кода Extrn Read: Near; внешние процедуры Extrn Write: Near Start:; точка входа в программу MOV AX, data; настройка указателя на MOV DS, AX; на сегмент данных MOV DX, offset ms1; DX <- адрес приглашения ввода А MOV AH, 09; вывод сообщения на экран INT 21h; через сервис DOS CALL Read; ввод A через процедуру MOV AL, Sh; переписываем введенное число MOV A, AL; в ячейку A MOV DX, offset ms2; DX <- адрес приглашения ввода B MOV AH, 09; вывод сообщения на экран INT 21h; через сервис DOS CALL Read; ввод B через процедуру MOV AL, Sh; переписываем введенное число MOV B, AL; в ячейку B MOV DX, offset ms3; DX <- адрес сообщения MOV AH, 09; вывод сообщения на экран INT 21h; через сервис DOS Calc_C A, B, C; расчет выражения через макрос MOV AH, 08; ожидание нажатия на клавишу INT 21h MOV AX, 4C00h; выход в DOS с кодом 0 INT 21h ends data segment common; данные программы, common указывает что ; сегменты data ; разных модулей будет перекрываться ; и использовать общую память Sh DB ?; общая память для программы и процедур A DB ?; переменные B DB ? C DB ? ms1 DB 'Введите A: $' ms2 DB 13, 10, 'Введите B: $' ms3 DB 13, 10, 'Промежуточные значения и результат: ', 13, 10,'$' ends stk segment stack; начало сегмента стека db 256 dup (?); резервируем 256 байт под стек ends; конец сегмента стека end Start Исходный код модуля процедур – файл «PR.ASM» assume cs: code, ds: data code segment Public Read; общедоступные имена Public Write ;------------------------------------------------------------------- ; Процедура ввода однобайтного числа со знаком ; Результат передается в переменной общей памяти Sh ;------------------------------------------------------------------- Read proc Near PUSH AX; сохраняем значения PUSH DX; используемых регистров PUSH SI; в стеке PUSH DS CALL Rtp Rtp:POP AX; AX <- адрес смещения подпрограммы в коде MOV DX, CS; настройка указателя данных MOV DS, DX; на данные процедуры MOV DX, Ofs; ADD DX, AX; DX <- адрес буфера MOV AH, 10; функция ввода строки символов INT 21h; ввод строки с клавиатуры MOV SI, DX ADD SI, 2; SI <- адрес первого символа строки XOR AL, AL; AL <- 0 MOV DL, [SI]; DL <- код первого символа POP DS; восстанавливаем сегмент данных MOV Sh, 1; Sh <- 1 - знак '+' CMP DL, '-'; проверка на '-' JNE R0; переход к R0, если не равно MOV Sh, -1; Sh <- -1 - ...Посмотреть предложения по расчету стоимости
Зарегистрируйся, чтобы получить больше информации по этой работе
Заказчик
заплатил
200 ₽
Заказчик не использовал рассрочку
Гарантия сервиса
Автор24
20 дней
Заказчик принял работу без использования гарантии
24 февраля 2017
Заказ завершен, заказчик получил финальный файл с работой
5
Заказ выполнил
dammit
5
скачать
КОНТРОЛЬНАЯ РАБОТА №2 Вариант 5 Написать программу с использованием языка Turbo Assembler.docx
2018-12-16 16:00
Последний отзыв студента о бирже Автор24
Общая оценка
5
Положительно
Все по заданию, быстро и качественно, учел мои личные замечания к заданию(редактировал). Рекомендую!

Хочешь такую же работу?

Хочешь написать работу самостоятельно?
Используй нейросеть
Мы создали собственный искусственный интеллект,
чтобы помочь тебе с учебой за пару минут 👇
Использовать нейросеть
Тебя также могут заинтересовать
Моделирование операций с кватернионами
Курсовая работа
Программирование
Стоимость:
700 ₽
Программирование на алгоритмическом языке или на Python.
Задача по программированию
Программирование
Разработка приложения по организации работы офиса
Курсовая работа
Программирование
Стоимость:
700 ₽
«Решение нелинейных задач в CPLEX»
Курсовая работа
Программирование
Стоимость:
700 ₽
БД для Фотостудии
Курсовая работа
Программирование
Стоимость:
700 ₽
написать программу на ассемблере
Решение задач
Программирование
Стоимость:
150 ₽
Организация внутренней памяти контроллера OMRON
Реферат
Программирование
Стоимость:
300 ₽
Динамическое программирование (Поиск кратчайшего пути)
Задача по программированию
Программирование
Введение в оптимизацию_1
Контрольная работа
Программирование
Стоимость:
300 ₽
2 практические работы комп графика и система комп верстки Latex
Контрольная работа
Программирование
Стоимость:
300 ₽
Контрольная работа по технологии вычислительного эксперимента
Контрольная работа
Программирование
Стоимость:
300 ₽
Разработать приложение Windows Forms на языке Visual C#
Контрольная работа
Программирование
Стоимость:
300 ₽
Маткад изучение методов статистического моделирования
Контрольная работа
Программирование
Стоимость:
300 ₽
Алгоритмы операций вставки, удаления и поиска реализуются в...
Контрольная работа
Программирование
Стоимость:
300 ₽
Методы одномерной оптимизации
Контрольная работа
Программирование
Стоимость:
300 ₽
Создать тест в html и объединить c базой данных
Контрольная работа
Программирование
Стоимость:
300 ₽
Топология сети
Контрольная работа
Программирование
Стоимость:
300 ₽
Читай полезные статьи в нашем
Процедуры и функции в Turbo Pfscal V.7.0
В Turbo Pascal существуют 2 вида подпрограмм, которыми являются процедуры и функции. Применение процедур и функций позволяет использовать различные фрагменты алгоритмов, которые уже встречались раньше в программах. Кроме того, подпрограммы разбивают крупные программы на отдельные смысловые части.
Отличительной особенностью функции от процедуры является то, что она возвращает результат указанного п...
подробнее
Работа с логическими выражениями. Использование скриптов на HTML-страницах
При использовании в кодах программ логических условий применяются операции сравнения различных типов данных:
= равно
не равно

> больше
> = больше или равно.
Также применяются логические функции и операторы:

Результат выполнения логической операции может принимать одно из двух возможных значений: True (истина) или False (ложь).
Переменным можно присваивать только английские значения...
подробнее
Работа с таблицами на веб-страницах
При необходимости размещения на ограниченном пространстве веб-страницы множества цифровых (и не только) данных лучшим средством является таблица. При необходимости создания красивого списка снова может помочь таблица. И при необходимости точного позиционирования текста и графики относительно друг друга опять же поможет таблица. Таблицы используются повсеместно в веб-документах. И это немудрено: пр...
подробнее
Ввод и форматирование веб-страниц
Редактором Frontpage реализуются 25 наиболее популярных клавиатурных комбинаций Microsoft Word, что очень удобно для пользователей.
Для размещения на странице текста, его нужно ввести с клавиатуры. Рассмотрим, как на новую страницу сайта вставить текст:
При наборе текста увидим, что его начало расположено у левого края текущей строки. По желанию его можно расположить любым другим способом: сделать ...
подробнее
Процедуры и функции в Turbo Pfscal V.7.0
В Turbo Pascal существуют 2 вида подпрограмм, которыми являются процедуры и функции. Применение процедур и функций позволяет использовать различные фрагменты алгоритмов, которые уже встречались раньше в программах. Кроме того, подпрограммы разбивают крупные программы на отдельные смысловые части.
Отличительной особенностью функции от процедуры является то, что она возвращает результат указанного п...
подробнее
Работа с логическими выражениями. Использование скриптов на HTML-страницах
При использовании в кодах программ логических условий применяются операции сравнения различных типов данных:
= равно
не равно

> больше
> = больше или равно.
Также применяются логические функции и операторы:

Результат выполнения логической операции может принимать одно из двух возможных значений: True (истина) или False (ложь).
Переменным можно присваивать только английские значения...
подробнее
Работа с таблицами на веб-страницах
При необходимости размещения на ограниченном пространстве веб-страницы множества цифровых (и не только) данных лучшим средством является таблица. При необходимости создания красивого списка снова может помочь таблица. И при необходимости точного позиционирования текста и графики относительно друг друга опять же поможет таблица. Таблицы используются повсеместно в веб-документах. И это немудрено: пр...
подробнее
Ввод и форматирование веб-страниц
Редактором Frontpage реализуются 25 наиболее популярных клавиатурных комбинаций Microsoft Word, что очень удобно для пользователей.
Для размещения на странице текста, его нужно ввести с клавиатуры. Рассмотрим, как на новую страницу сайта вставить текст:
При наборе текста увидим, что его начало расположено у левого края текущей строки. По желанию его можно расположить любым другим способом: сделать ...
подробнее
Теперь вам доступен полный отрывок из работы
Также на e-mail вы получите информацию о подробном расчете стоимости аналогичной работы