Galina
Сообщение
#65829 28.11.2010, 4:08
Пожалуйста, помогите написать программу на ассемблере.Составить программу для вычисления выражения 2A+2B, не используя команды умножения. Вывести сообщение о четности результата.Начало есть , но дальше не получается
.model small
.stack 100h
.data
x dw 5
y dw 3
z dw ?
.code
mov ax,@data
mov ds,ax
mov ax,x
add ax,x
add ax,y
add ax,y
mov z,ax
mov ah,4ch
int 21h
end
Эта прорамма только складывает числа , а как проверить на четность?
Vahappaday
Сообщение
#65830 28.11.2010, 6:54
)))) Можно просто вывести сообщение о чётности))) Результат всегда чётный)))
Или имеется в виду побитовая чётность?
Galina
Сообщение
#65832 28.11.2010, 8:07
Цитата(Vahappaday @ 28.11.2010, 12:54)

)))) Можно просто вывести сообщение о чётности))) Результат всегда чётный)))
Или имеется в виду побитовая чётность?
А если например первое число -5 , а второе -0,5 то 5*2+0,5*2 = 11 (нечетное)
граф Монте-Кристо
Сообщение
#65838 28.11.2010, 9:19
А если первое число 0,01, а второе 0,02, то выражение будет чётным или нечётным?
Galina
Сообщение
#65841 28.11.2010, 9:51
Цитата(граф Монте-Кристо @ 28.11.2010, 15:19)

А если первое число 0,01, а второе 0,02, то выражение будет чётным или нечётным?
Наверно чётное
Vahappaday
Сообщение
#65843 28.11.2010, 11:21
Директива add принимает только целочисленные операнды. Тут нет ни одной команды, которая бы работала с числами с плавающей точкой)
julia_lisha
Сообщение
#65865 28.11.2010, 15:46
дествительно, какую четность необходимо вывести?)
Vahappaday
Сообщение
#65890 28.11.2010, 19:25
Вероятнее всего bit parity, но пока ждём подтверждения))
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста,
нажмите сюда.