Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.10.2012, 21:32   #1
kjrjgsnjd
Пользователь
 
Регистрация: 22.10.2012
Сообщений: 10
По умолчанию Переменные и массивы; умножение и деление

Здравствуйте пойдёт ли моя программа в winAsm
Задание
1. Создать 3 переменные (размер 1 байт), хранящие числа в диапазоне 0..255.
2. Создать 3 переменные (размер 1 байт) с числами 7, 32, 100.
3. Выполнить операции беззнакового умножения (MUL оп1,оп2) и целочисленного
беззнакового деления (DIV оп1,оп2), с каждой парой переменных, занося результат в
массив (размер 4 байта).
4. При умножении учесть, что произведение двух однобайтных чисел занимает до 2 байт.
При делении не учитывать остаток.
Дополнительно
1. Все используемые в программе РОН должны сохранить свои изначальные значения (PUSH
оп1/POP оп1) и должны обнулять перед использованием (MOV оп1,0/XOR оп1,оп1).
2. Программа должна быть полноценным консольным приложением, завершающим свою
работу (Invoke ExitProcess,0).
.386
MODEL flat,stdcall
include kernel32.inc
includelib kernel32.lib

.DATA
Start:
pusn eax
xor eax,eax
mov al,a[0]
mul b [0]
mov esi,12
mov array [esi*2],ax
mov al,a[1]
mul b[1]
dec esi
mov al,a[2]
mov array[esi*2],ax
mul b[2]
dec esi
mov array[esi*2],ax
mov al,a[2]
div b[2]
dec esi
xor eax,eax
mov array[esi*2],ax
moval,al,a[1]
div b[1]
dec esi
xor eax,eax
mov array [eai*2],ax
mov al,a[0]
div b[0]
dec esi
xor eax,eax
mov array[esi*2],ax
pop eax
End Start
kjrjgsnjd вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Написать программу, выполняющую по выбору сложение, вычитание, умножение или деление нацело двух многоразрядных чисел. dmitriy20104 Паскаль, Turbo Pascal, PascalABC.NET 1 20.08.2012 19:12
Уважаемые программисты, отзовитесь. (С++) Арифметические действия для комплексных чисел (сложение, вычитание, умножение и деление) Meurtre Помощь студентам 4 19.12.2011 01:15
ВЫчитание, умножение и деление массивов на С++ Flood Помощь студентам 2 15.05.2010 16:54
Сложение, вычитание, деление, умножение в Turbo Debugger GaJIbI4 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 9 08.03.2010 15:23
Умножение и деление StiTch_Parazit Помощь студентам 10 20.05.2008 14:32