Другие языки программирования и технологии

АССЕМБЛЕР ПОМОГИТЕ! Задали на учебе пример на автомат. Помогите умоляю. Программа emu8086.

Задача:
a + 4bc
a,b,c > 0(каждый по отдельности если что)
И в чем заключается проблема? Что ты уже сделал? На чем запнулся?

Мы свои автоматы уже получили, твой нам не нужен.
Валерий Цыплин
Валерий Цыплин
17 671
Лучший ответ
Владимир Егоров Да я вообще не понимаю этого! Я летчик, а не программист!
Владимир Егоров Помоги если можешь)
 ; Объявление переменных 
a db ?
b db ?
c db ?
result dw ?

; Ввод значений переменных a, b и c с клавиатуры
mov ah, 0
int 21h
mov a, al

mov ah, 0
int 21h
mov b, al

mov ah, 0
int 21h
mov c, al

; Вычисление результата
mov ax, b
imul c
mov bx, 4
imul bx
add ax, a
mov result, ax

; Вывод результата на экран
mov ah, 9
mov dx, offset result
int 21h

; Конец программы
mov ah, 4ch
int 21h
Аранов Андрей
Аранов Андрей
2 302
Пойдёшь скоро в армию, после отчисления с учёбы.
Там тебе выдадут автомат. :))
Ghenadie Vizitiu
Ghenadie Vizitiu
904
Владимир Егоров Я негоден! Я летчик
Владимир Егоров Если сам не знаешь, то нечего не пиши тут!
-Жак Фреско-
Ниже привел пример кода на ассемблере, который может быть использован для решения данной задачи. Этот код может быть использован с исполняющей системой emu8086. Обрати внимание, что данный код является только примером и может быть изменен в зависимости от конкретных требований к реализации.

; объявляем переменные a, b, c и res
a dw ?
b dw ?
c dw ?
res dw ?

; получаем значения a, b, c от пользователя
mov ah, 1
mov dx, a
int 21h
mov ah, 1
mov dx, b
int 21h
mov ah, 1
mov dx, c
int 21h

; вычисляем a + 4bc и сохраняем результат в res
mov ax, a
mov bx, b
mul bx
mov bx, 4
mul bx
mov cx, res
add ax, cx
mov res, ax

; выводим результат на экран
mov ah, 9
mov dx, res
int 21h

; завершаем программу
mov ax, 4C00h
int 21h

Буду рад любой денужке: 4400 4301 7328 0501
Nur Bulten
Nur Bulten
308
Владимир Иванов За неправильный код денег не берут