powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Assembler. Не работает цикл
11 сообщений из 11, страница 1 из 1
Assembler. Не работает цикл
    #35987030
Азиз
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
STACKSG SEGMENT PARA STACK 'PARA'
  DW  32  DUP(?)
STACKSG ENDS
DATASG SEGMENT
  A1 DW  12 
  A2 DW  28 
  B1 DW  31 
  B2 DW  36 
  C1 DW  20 
  C2 DW  18 
DATASG ENDS
CODESG SEGMENT
BEGIN PROC FAR
  ASSUME CS:CODESG, DS:DATASG, SS:STACKSG, ES:DATASG  
    PUSH DS
    SUB AX, AX
    PUSH AX
    MOV AX, DATASG
    MOV DS,AX
	MOV AX, A1
    ADD AX, A2
    SUB AX, B2
    MOV BX, B1
    ADD BX, B2
    MOV CX, C1
    ADD CX, C2
M1: MOV DX, CX
    AND DX,  1 
    JE M2
    SUB AX, BX
    JMP M3
M2: ADD AX, CX 
M3: AND DX,  0 
    LOOP M1
    RET
  BEGIN ENDP
  CODESG ENDS
END BEGIN 

Сильно не материтесь, я не силен в Ассемблере.

M1: MOV DX, CX
AND DX, 1
JE M2
SUB AX, BX
JMP M3
M2: ADD AX, CX
M3: AND DX, 0
LOOP M1
всегда проходит только один раз


Модератор:
кнопку SRC для кого сделали?
...
Рейтинг: 0 / 0
Assembler. Не работает цикл
    #35987176
ksanderrrrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
убери loop и поставь jmp m1, а выход организуй по проверке регистра(какого надо :-))
...
Рейтинг: 0 / 0
Assembler. Не работает цикл
    #35987786
vino
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
АзизСильно не материтесь, я не силен в Ассемблере.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
M1: MOV DX, CX
    AND DX,  1 
    JE M2
    SUB AX, BX
    JMP M3
M2: ADD AX, CX 
M3: AND DX,  0 
    LOOP M1
всегда проходит только один раз
это как Вы узнали, что только один раз, а не 38?
...
Рейтинг: 0 / 0
Assembler. Не работает цикл
    #35988064
Азиз
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Turbo Debagger-ом прохожу пошагово. Всегда заканчивает выполения после первой интерации.
...
Рейтинг: 0 / 0
Assembler. Не работает цикл
    #35988351
clihlt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Азиз,

А ты по F7 проходишь или по F8 ? Точно уже не помню но помоему турбодебагер по F8 если через LOOP Проходить сразу весь цикл прогонял и выходил за LOOP. Ходи по F7
...
Рейтинг: 0 / 0
Assembler. Не работает цикл
    #35989193
Азиз
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
clihlt,

ТОЧНО!!!!))))
Спасибо)
...
Рейтинг: 0 / 0
Assembler. Не работает цикл
    #35989258
Фотография Master4
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Какой код красивый )) на чистый ассемблерный код можно смотреть долго
...
Рейтинг: 0 / 0
Assembler. Не работает цикл
    #36008953
Фотография Master4
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А вот у меня ассемблерный код отказывается работать во всех компиляторах насм, масмы, тасмы... только из-за этого я часто бросал изучение ассемблера. еще какието линковщики нужны, в инете на первой ссылке не валяются как 99% крякнотого софта...
Не судьба видимо. А я вообще бы хотел на ассемблере писать. Моя система поддерживает и позволяет мне ассемблер.
На любую строку ругаются все компиляторы. начинал со всяких, и копировал с учебников, толку нет. Как буду снова готов, скачаю много учебников, может там описывается как делать чтоб не ругалось.
...
Рейтинг: 0 / 0
Assembler. Не работает цикл
    #36009086
Vowk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Master4,
необходимо сосредоточиться на каком-то одном компиляторе. Я начинал c MASM, поэтому могу его посоветовать для начала. Самый оптимальный - это MASM 6.11 - MASM 6.14.
Литература наиболее оптимальная для начала - это серия книг Магда.
Важно еще понять, что прогр. на ассемблере включает в себя несколько по сути дела разных вещей:
1) создание программ для DOS16 (в принципе еще есть для DOS32)
2) создание программ для Win32 (в принципе еще есть для Win16)
3) создание п/п на ассемблере для ЯП высокого уровня (MS Visual С, Delphi, CLIPPER).
Вообще это довольно увлекательная часть программирования. Для начала рекомендую разобрать программу, которая выясняет видеорежим и печатает содержимое регистра (AX), в котором указывается количество колонок (80 в десят. = 50 в 16-ричном), и номер текстового режима (3).
Всё еще зависит от того, как готовить EXE-файл. Обычно приводят всякие там MAKE, NMAKE, что скрывает процесс создания программы. Я же сторонник BAT-файлов. Для создания программы необходимо разместить bat-файл в одном из каталогов, который входит в системный PATH, и запускать as16 <имя asm-файла>. Предполагается, что в каталоге D:\MASM611 находится установленный MASM.
Прога работает под WinNT, W2K, WinXP. Если получится - можно тогда двигаться дальше.
Далее рекомендую освоить MultiEdit, побывать на wasm.ru
...
Рейтинг: 0 / 0
Assembler. Не работает цикл
    #36009347
Фотография Master4
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vowk,

Спасибо.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Assembler. Не работает цикл
    #39110009
Анон88005553535
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
clihlt, столкнулся с аналогичной проблемой. Спасибо, помогло)
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Assembler. Не работает цикл
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]