Вычислить значение выражения

Ответить

Код подтверждения
Введите код в точности так, как вы его видите. Регистр символов не имеет значения.

BBCode ВКЛЮЧЁН
[img] ВКЛЮЧЁН
[url] ВКЛЮЧЁН
Смайлики ОТКЛЮЧЕНЫ

Обзор темы
   

Развернуть Обзор темы: Вычислить значение выражения

Re: Вычислить значение выражения

somewhere » 14 апр 2014, 23:42

* программа вычисляет (x-3)^2 - 4x, то есть достаточно заменить sub ax, 3 на add ax, 3
* нет присвоения Y-ку результата
* outstr наверное выводит "ответ=", а где же вывод результата вычисления?
* все таки по хорошему Х должен быть переменной, а не константой
* при Х > 181 результат возведения в квадрат со знаком выйдет за границы 16 битного целого числа со знаком и вычисления будут ошибочны

Вычислить значение выражения

Anbore » 14 апр 2014, 22:40

Помогите найти ошибку. Требуется разработать программу на ассемблере (masm) для вычисления значения выражения y=(x+3)2-4x.
include io.asm ;подключение операций ввода-вывода
stack segment stack
dw 128 dup (?)
stack ends
data segment
x equ 2
y dw ?
T db 'ответ=$'

data ends

code segment 'code'
assume ss:stack, ds:data, cs:code
start:
mov ax, x
sub ax, 3
imul ax
mov bx, x
imul bx, 4
sub ax,bx
mov dx,offset T
outstr
newline-
fin: finish
Code ends

Вернуться к началу