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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 22.12.2016, 23:48   #1
chuVbaka
 
Регистрация: 19.12.2013
Сообщений: 6
По умолчанию пробую запустить в emu8086, но не могу выйти с бесконечного цикла - Ассемблер

Есть код, пробую запустить в emu8086, но не могу выйти с бесконечного цикла
суть задания - Поиск и замена "9" на "5" в диапазоне 120..16F
Код:
MOV DI,0120 ; DI<- 120
MOV AL,35   ; AL<- 35
MOV AH,39   ; AH<- 39
MOV CX,0050 ; CX<- 50

                     
CMP [DI],AH ;
JNZ 0110    ; 
MOV [DI],AL ; 
INC DI      ; 
LOOP 010A   ; 

INT 20      ; завершение
chuVbaka вне форума Ответить с цитированием
Старый 23.12.2016, 07:29   #2
FPaul
Форумчанин
 
Регистрация: 25.01.2015
Сообщений: 472
По умолчанию

JNZ 0110 с очень большой вероятностью делает переход на предыдущую строчку. А вам нужно переходить на строку INC DI. Объявите символьную метку и сделайте переход на неё
Код:
MOV DI,0120 ; DI<- 120
MOV AL,35   ; AL<- 35
MOV AH,39   ; AH<- 39
MOV CX,0050 ; CX<- 50

@@For:
CMP [DI],AH ;
JNZ @@Skip    ;
MOV [DI],AL ;
@@Skip:
INC DI      ;
LOOP @@For   ; 

INT 20      ; завершение
И ещё, при инициализации укажите систему счисления, иначе это десятичные числа mov cx, 0050h
FPaul вне форума Ответить с цитированием
Старый 23.12.2016, 09:09   #3
chuVbaka
 
Регистрация: 19.12.2013
Сообщений: 6
По умолчанию

Спасибо

Последний раз редактировалось chuVbaka; 23.12.2016 в 10:47.
chuVbaka вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
не получается выйти из цикла Taner Общие вопросы Delphi 9 22.04.2014 21:33
Не могу выйти из цикла while mustaman Общие вопросы Delphi 7 18.07.2013 14:51
C++ Как выйти из цикла при нажатии enter? Seede1 Помощь студентам 2 06.12.2011 14:50
Делфи выйти из цикла. S_Yevgeniy Помощь студентам 1 14.11.2009 09:41
Как выйти из бесконечного цикла! Эдуард Общие вопросы C/C++ 11 02.03.2008 19:15