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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 13.06.2016, 14:31   #1
TunelLord
Пользователь
 
Регистрация: 22.01.2016
Сообщений: 20
По умолчанию Assembler задача3 .

Меня кажется я неправильно подошел к решению задачи. Подскажите что у меня не правильно ?
Условие : Дан массив a(n) типа SDWORD заменить все положительные элементы нулями .

.data
array SDWORD -1, -3, 5, -2, 6
.code
main PROC
mov cx, offset array
mov bx, -1
L1:
cmp cx, bx
ja L2
L2:
xchg cx, 0
LOOP L1
call DumpRegs
main ENDP
END main ;
TunelLord вне форума Ответить с цитированием
Старый 13.06.2016, 14:31   #2
TunelLord
Пользователь
 
Регистрация: 22.01.2016
Сообщений: 20
По умолчанию

Я новичок , так что не судите строго .
TunelLord вне форума Ответить с цитированием
Старый 13.06.2016, 15:18   #3
R71MT
Участник клуба
 
Аватар для R71MT
 
Регистрация: 16.06.2011
Сообщений: 1,428
По умолчанию

Код:
.data
array   dd    -1,-3,5,-2,6,1000,2856,123974,-50000,-95130,18,73,0,2016
len     equ   ($ - array)/4

.code
      mov   ecx, len             ; длина массива
      mov   esi, offset array    ; его адрес
      mov   edi, esi             ;
find: lodsd                      ;
      or    eax,eax              ; тест элемента
      js    miss                 ; пропустить, если флаг SF=1
      xor   eax,eax              ; иначе: EAX = 0
miss: stosd                      ; перезапись элемента
      loop  find                 ; мотаем ECX-раз..
Нашедшего выход - затаптывают первым..
R71MT вне форума Ответить с цитированием
Старый 13.06.2016, 15:44   #4
TunelLord
Пользователь
 
Регистрация: 22.01.2016
Сообщений: 20
По умолчанию

Большое спасибо .
TunelLord вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
assembler MOJO3000 Фриланс 1 22.12.2011 05:32
Assembler DEFOX Помощь студентам 0 14.12.2011 14:32
assembler( joha Помощь студентам 0 22.11.2011 18:47
Assembler Peppi Помощь студентам 3 22.11.2011 17:24