0 / 0 / 0
Регистрация: 03.11.2017
Сообщений: 12
1
emu8086

Вычислить арифметическое выражение

09.10.2019, 22:57. Показов 1044. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый вечер! Нужно решить следующее уравнение: Y2-4Y+1
Работаю в emu8086:
Assembler
1
2
3
Data SEGMENT
  Y DB 7
Data ENDS
Что дальше делать - не представляю. Пожалуйста, помогите решить.
Результат нужно получить в ax.

Заранее СПАСИБО!

Добавлено через 1 час 8 минут
Написал такой код:
Assembler
1
2
3
4
5
6
7
8
9
10
11
12
Data SEGMENT 
  Y DB 7d
Data ENDS          
mov al,Y
mul al
mov cx,ax;cx=Y*Y
mov al,Y ;al=Y
mov bl,4d;bl=4
mul bl   ;ax=al*bl
sub cx,ax;cx=cx-ax
mov ax,1d
add ax,cx
Почему он корректно работает только для числа 7? Пожалуйста, подскажите
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
09.10.2019, 22:57
Ответы с готовыми решениями:

Вычислить арифметическое выражение
Добрый день! Подскажите, пожалуйста, как сделать вывод дробного числа на экран? Есть задание:...

Вычислить арифметическое выражение
Помогите решить 3 задачи на ассемблере 1. Даны двузначные числа m и n в десятичной системе...

Вычислить арифметическое выражение
Добрый день Помогите,пожалуйста, нужно срочно написать программу в Ассемблере, которая находить...

Вычислить арифметическое выражение
f = (a*a-bd)/d

4
Ушел с форума
Автор FAQ
16343 / 7661 / 1076
Регистрация: 11.11.2010
Сообщений: 13,711
10.10.2019, 03:47 2
Y2-4Y+1=(Y-4)*Y+1
Assembler
1
2
3
4
5
6
7
8
9
10
11
12
.data
Y db 7
.code
start: mov ax,@data
mov ds,ax
mov al,Y
sub al,4;AL=Y-4
imul Y;AX=(Y-4)*Y
inc ax;AX=(Y-4)*Y+1
mov ah,4Ch
int 21h
end start
0
0 / 0 / 0
Регистрация: 03.11.2017
Сообщений: 12
10.10.2019, 20:14  [ТС] 3
Спасибо, но я так понимаю результат не в AX хранится, потому что с помощью этого ничего не выводится:
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
26
27
28
29
30
31
32
Data SEGMENT 
  Y DB 7d
Data ENDS          
mov ax,@data
mov ds,ax
mov al,Y
sub al,4;AL=Y-4
imul Y;AX=(Y-4)*Y
inc ax;AX=(Y-4)*Y+1
mov ah,4Ch
int 21h
oi1: 
xor cx, cx
mov bx, 10 
oi2:
xor dx,dx
div bx
push dx
inc cx
test ax, ax
jnz oi2
mov ah, 02h
oi3:
pop dx
cmp dl,9
jbe oi4
add dl,7
oi4:
add dl, '0'
int 21h
loop oi3
ret
Как вывести результат? Подскажите, пожалуйста.
0
Ушел с форума
Автор FAQ
16343 / 7661 / 1076
Регистрация: 11.11.2010
Сообщений: 13,711
11.10.2019, 01:52 4
Цитата Сообщение от Basil441 Посмотреть сообщение
Как вывести результат?
Закрепленная тема Ввод и вывод чисел в различных системах счисления
0
Модератор
Эксперт по электронике
8564 / 4412 / 1655
Регистрация: 01.02.2015
Сообщений: 13,704
Записей в блоге: 9
11.10.2019, 19:20 5
Basil441, вы скопировали вывод, но в ходе выполнения программы он нигде не вызывается. Поэтому вывод и отсутствует.
0
11.10.2019, 19:20
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
11.10.2019, 19:20
Помогаю со студенческими работами здесь

Вычислить арифметическое выражение
Пишу программу на emu8086.Должна вычислять пример 9x(x+y)/(y+4),где x=4,y=10. x dd 4 y dd 10 ...

Вычислить арифметическое выражение
Нужна программа складывающие два числа и умножающая эту сумму на третье число.

Вычислить арифметическое выражение
Здравствуйте! Я профан в ассемблере, но мне нужно решить задачку. Есть уравнение: Z = XY - X^2 +...

Вычислить арифметическое выражение
У меня есть прога, которая должна считать функцию y=(A+B)/(A-B), проблема в том, что при а=255,...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

Новые блоги и статьи
В чем отличие между INNER JOIN и OUTER JOIN
bytestream 22.01.2025
В современных базах данных информация часто распределена между множеством взаимосвязанных таблиц, что делает операции объединения JOIN неотъемлемой частью работы с SQL. Эти операции позволяют. . .
Как сделать первую букву заглавной в JavaScript
bytestream 22.01.2025
JavaScript предоставляет разработчикам множество инструментов для эффективной работы с текстовыми данными. Одной из часто встречающихся задач при обработке строк является преобразование первой буквы. . .
Что такое Big O нотация и алгоритмическая сложность
bytestream 22.01.2025
Введение в алгоритмическую сложность В мире разработки программного обеспечения эффективность алгоритмов играет crucial роль в создании качественных приложений. Алгоритмическая сложность. . .
Как решать конфликты слияния (merge) в Git
bytestream 22.01.2025
Конфликты слияния в системе контроля версий Git возникают в ситуациях, когда две или более ветки разработки содержат несовместимые изменения в одних и тех же участках кода. Эти конфликты представляют. . .
Как использовать регулярные выражения
bytestream 22.01.2025
Регулярные выражения представляют собой мощный инструмент для работы с текстовыми данными, который позволяет осуществлять поиск, проверку и манипуляцию строками на основе определенных шаблонов. Этот. . .
Как выйти из Vim
bytestream 22.01.2025
Vim (Vi IMproved) представляет собой один из самых влиятельных текстовых редакторов в истории компьютерной индустрии, эволюционировавший из своего предшественника Vi, созданного Биллом Джоем в 1976. . .
NoSQL базы данных: что это такое и какие существуют
bytestream 22.01.2025
В современную эпоху цифровой трансформации объемы данных растут экспоненциально, создавая новые вызовы для традиционных систем управления базами данных. NoSQL (Not Only SQL) представляет собой. . .
Обновление исследования от команды MCM (январь 2025 г.)
Programma_Boinc 22.01.2025
Обновление исследования от команды MCM (январь 2025 г. ) Мы продолжаем изучать молекулярные сигнатуры, связанные с раком легких, с текущим фокусом на GCM1, факторе транскрипции, участвующем в. . .
Как работать с Kafka в Go (Golang)
bytestream 22.01.2025
Apache Kafka представляет собой распределенную платформу потоковой передачи данных, которая произвела революцию в области обработки событий и интеграции микросервисов. Эта система, изначально. . .
Как использовать RabbitMQ в Go (Golang)
bytestream 22.01.2025
RabbitMQ представляет собой надежный и широко используемый брокер сообщений, который играет ключевую роль в построении современных распределенных систем и микросервисной архитектуры. В основе работы. . .
Как преобразовать список списков в простой список в Python
bytestream 22.01.2025
При работе с Python разработчики часто сталкиваются с необходимостью обработки сложных структур данных, среди которых особое место занимают вложенные списки. Эти структуры представляют собой списки,. . .
Что такое GUID / UUID и как их создать
bytestream 22.01.2025
В мире разработки программного обеспечения существует постоянная потребность в уникальной идентификации объектов, записей и ресурсов. Эта задача становится особенно актуальной в распределенных. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru