С Новым годом! Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 17.10.2016
Сообщений: 54
1

Напишите программу на Pascal с встроенным Ассемблером

28.03.2017, 17:56. Показов 1210. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Вот пример задачи.
[I]Вычислить Х = 3А + ( В + 5 ) / 2 - С - 1,
где А, В, С, Х- целые знаковые числа занимающие слово, написать программу реализующую данную формулу.
Распишем формулу по отдельным операциям:
АХ ← А ; значение А в регистре АХ
АХ ← 2 *( АХ ) ; 2А в АХ
АХ ← ( АХ ) + А ; 3А в АХ
ВХ ← В ; В в ВХ
ВХ ← 5 + ( ВХ ) ; В+5 в ВХ
ВХ ← (ВХ ) / 2 ; ( В+5) / 2 в ВХ
АХ ← (BX ) + ( AX ) ; 3А+( В+5 ) / 2 в АХ
АХ ← ( АХ ) - С ; 3А+( В+5 ) / 2 - С в АХ
АХ ← ( АХ ) -1 ; 3А+( В+5 )/2 - С - 1 в АХ
Х ← ( АХ ) ; 3А+( В+5 )/2 - С - 1 в Х
Порядок проведения работы:
1. Ввести программу-пример и проверить ее работу
Текст программы:
Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
data segment
a dw 10
b dw 20
c dw 5
x dw ?
data ends
code segment
assume cs: code, ds: data
start: mov ax, data
mov ds, ax ; загрузить адрес
mov ax, a ; сегмента данных
sal ax, 1
add ax, a
mov bx, b
add bx, 5
sar bx, 1
add ax, bx
sub ax, c
dec ax
mov x, ax ; запись результата в память
quit:
mov ax, 4c00h ; код завершения 0
int 21 ; выход в dos
code ends
end start
Вот вариант который нужно сделать
"Х= 6 (А - 2В + С / 4) + 10"
Пожалуйста.Если не сложно.
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
28.03.2017, 17:56
Ответы с готовыми решениями:

Начало работы со встроенным ассемблером
Помогите, кто знает как с этим работать Проходим в универе встроенные в с++ ассемблер, накидал...

Нужна помощь со встроенным ассемблером в с++
вот такая задачка Основная задача: По матрице целых чисел X размером 5x5 построить массив Z...

Как пользоваться встроенным ассемблером Visual Studio?
как пользоваться встроенным ассемблером visual studio?я создал через project - add new item -...

Работа со встроенным ассемблером. Записать число 5050 во все регистры общего назначения
Ребят, нужна ваша помощь. Нифига не понял этот Ассемблер. Помогите мне написать программу, которая...

1
Модератор
Эксперт Pascal/DelphiЭксперт NIX
7797 / 4620 / 2831
Регистрация: 22.11.2013
Сообщений: 13,121
Записей в блоге: 1
28.03.2017, 23:09 2
Лучший ответ Сообщение было отмечено ScreannyS как решение

Решение

Вас не смущает, что пример не на BASM (встроенном ассемблере)?
С форумом точно не ошиблись?

Добавлено через 11 минут
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
{$G+}
var a, b, c, r: Integer;
begin
  Write('a, b, c: '); ReadLn(a,b,c);
  asm
    mov ax,c
    sar ax,2
    sub ax,b
    sub ax,b
    add ax,a
    sal ax,1
    mov bx,ax
    sal ax,1
    add ax,bx
    add ax,10
    mov r,ax
  end;
  WriteLn('6 (А - 2В + С / 4) + 10 = ',r,', контроль: ',r=6*(a-2*b+c div 4)+10);
end.
1
28.03.2017, 23:09
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
28.03.2017, 23:09
Помогаю со студенческими работами здесь

Напишите рабочую программу free pascal
Можете помочь написать полный код программы,чтобы работал в паскале? Чему будет равно значение...

напишите плз готовую программу в MIDlet pascal для деления с остатком
помогите написать программу в MIDlet pascal для деления с остатком,чтоб на телефоне можно было...

Напишите программу на языке Pascal, вычисляющую количество информации в сообщении по формуле Шенона
сообщение состоит из 1 символа,а алфавит из - 3 букв с заданными вероятностями. Напишите программу...

Составьте алгоритм в виде блок-схемы и напишите программу в ИСР Pascal для определения 5 первых совершенных чисел
Составьте алгоритм в виде блок-схемы и напишите программу в ИСР Pascal для определения 5 первых...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Как проводить научные вычисления на Python
InfoMaster 15.01.2025
Python стал одним из наиболее востребованных языков программирования в области научных вычислений благодаря своей простоте, гибкости и обширной экосистеме специализированных библиотек. Научные. . .
Создание игры типа Minecraft на PyGame/Python: пошаговое руководство
InfoMaster 15.01.2025
В данном руководстве мы рассмотрим процесс создания игры в стиле Minecraft с использованием библиотеки PyGame на языке программирования Python. Этот проект идеально подходит как для начинающих. . .
Как создать свою первую игру в стиле Doom на Unreal Engine
InfoMaster 15.01.2025
Разработка шутера от первого лица в стиле классического Doom представляет собой увлекательное путешествие в мир игрового программирования, где сочетаются творческий подход и технические навыки. . . .
Параллельное программировани­е: основные технологии и принципы
InfoMaster 15.01.2025
Введение в параллельное программирование Параллельное программирование представляет собой фундаментальный подход к разработке программного обеспечения, который позволяет одновременно выполнять. . .
Как написать микросервис на C# с Kafka, MediatR, Redis и GitLab CI/CD
InfoMaster 15.01.2025
В современной разработке программного обеспечения микросервисная архитектура стала стандартом де-факто для создания масштабируемых и гибких приложений. Этот подход позволяет разделить сложную систему. . .
Что такое CQRS и как это реализовать на C# с MediatR
InfoMaster 15.01.2025
Концепция CQRS и её роль в современной разработке В современном мире разработки программного обеспечения архитектурные паттерны играют ключевую роль в создании масштабируемых и поддерживаемых. . .
Как настроить CI/CD с Azure DevOps
InfoMaster 15.01.2025
CI/ CD, или непрерывная интеграция и непрерывное развертывание, представляет собой современный подход к разработке программного обеспечения, который позволяет автоматизировать и оптимизировать процесс. . .
Как настроить CI/CD с помощью Jenkins
InfoMaster 15.01.2025
Введение в CI/ CD и Jenkins В современной разработке программного обеспечения непрерывная интеграция (CI) и непрерывная доставка (CD) стали неотъемлемыми элементами процесса создания качественных. . .
Как написать микросервис на Go/Golang с Kafka, REST и GitHub CI/CD
InfoMaster 14.01.2025
Определение микросервиса, преимущества использования Go/ Golang Микросервис – это архитектурный подход к разработке программного обеспечения, при котором приложение состоит из небольших, независимо. . .
Как написать микросервис с нуля на C# с RabbitMQ, CQRS, Swagger и CI/CD
InfoMaster 14.01.2025
В современном мире разработки программного обеспечения микросервисная архитектура стала стандартом де-факто для создания масштабируемых и гибких приложений. Этот архитектурный подход предполагает. . .
Как создать интернет-магазин на PHP и JavaScript
InfoMaster 14.01.2025
В современном мире электронная коммерция стала неотъемлемой частью бизнеса. Создание собственного интернет-магазина открывает широкие возможности для предпринимателей, позволяя достичь большей. . .
Как написать Тетрис на Ассемблере
InfoMaster 14.01.2025
Тетрис – одна из самых узнаваемых и популярных компьютерных игр, созданная в 1984 году советским программистом Алексеем Пажитновым. За прошедшие десятилетия она завоевала симпатии миллионы людей по. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru