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

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - 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