Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Образовательный студенческий форум _ Информатика / Программирование _ Программирование на ассемблере

Автор: Galina 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 28.11.2010, 6:54

)))) Можно просто вывести сообщение о чётности))) Результат всегда чётный)))
Или имеется в виду побитовая чётность?

Автор: Galina 28.11.2010, 8:07

Цитата(Vahappaday @ 28.11.2010, 12:54) *

)))) Можно просто вывести сообщение о чётности))) Результат всегда чётный)))
Или имеется в виду побитовая чётность?


А если например первое число -5 , а второе -0,5 то 5*2+0,5*2 = 11 (нечетное)

Автор: граф Монте-Кристо 28.11.2010, 9:19

А если первое число 0,01, а второе 0,02, то выражение будет чётным или нечётным?

Автор: Galina 28.11.2010, 9:51

Цитата(граф Монте-Кристо @ 28.11.2010, 15:19) *

А если первое число 0,01, а второе 0,02, то выражение будет чётным или нечётным?


Наверно чётное

Автор: Vahappaday 28.11.2010, 11:21

Директива add принимает только целочисленные операнды. Тут нет ни одной команды, которая бы работала с числами с плавающей точкой)

Автор: julia_lisha 28.11.2010, 15:46

дествительно, какую четность необходимо вывести?)

Автор: Vahappaday 28.11.2010, 19:25

Вероятнее всего bit parity, но пока ждём подтверждения))

Русская версия Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)