IPB
ЛогинПароль:

> ПРАВИЛА РАЗДЕЛА!!!

1. Заголовок или название темы должно быть информативным
2. Все тексты программ должны помещаться в теги [CODE=asm] [/CODE]
3. Прежде чем задавать вопрос, см. "FAQ",если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно, такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Ассемблера. Исключение только с согласия модератора.
5. НЕ используйте форум для личного общения! Все, что не относиться к обсуждению темы - на PM!
6. Проверяйте программы перед тем, как выложить их на форум!!

 
 Ответить  Открыть новую тему 
> Ret
сообщение
Сообщение #1


Бывалый
***

Группа: Пользователи
Сообщений: 234
Пол: Мужской
Реальное имя: AHTOH

Репутация: -  1  +



Begin:
mov ah,10h
int 16h
cmp al,'y'
jz Sym
NON:
mov ah,9
mov dx,......
int 21h
int 20h
Sym:
-//-//-//
-//-/--/
jmp NON


а если вместо jmp будет ret ? это будет одно и тоже ?
если нет тогда что ? а видел прогу где в конце метки было RET что это означает.. (обычно его пишут в конце процедуры чтоб возвратиться на адрес откуда пришли

Begin:
mov ah,10h
int 16h
cmp al,'y'
jz Sym
mov ah,9
mov dx,......
int 21h
int 20h
Sym:
-//-//-//
-//-/--/
ret
ret


--------------------
Хочу в репу !

Cмотри,а то ведь получишь!
Админ.

Не получит - его фиг догонишь!
Админ №2.

P.S Вы еще третьего админа притащите сюда :D
ваш аффтар :D
Звали? :D (админ № не помню какой)

ха больше нифига не напишете
афтар

Уверен? (Moderator)
А еще можно ? (супмодер)
Хватит его мучать ! Избили уж... (админ)
Не хватит. я тоже напишу (тоже Админ)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






To: suriv, сам же и ответил на свой вопрос:
Цитата
обычно его пишут в конце процедуры чтоб возвратиться на адрес откуда пришли

только не на адрес, "откуда пришли", а туда, откуда процедура/функция была вызвана (с помощью CALL), но никак не внутри процедуры...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Lonely_Raven
****

Группа: Пользователи
Сообщений: 640
Пол: Мужской

Репутация: -  1  +


retвозврат ближний\дальний из процедуры
работа команды зависит от типа процедуры
команда последовательно последовательно востанавливает из стека
ip cs для процедур дальнего типа или ближнего просто ip
----------
так вот в стек ты сам можешь положить что нибудь smile.gif поэкперементируй
и посмотри в отладчике
----------
формат COM
программа зациклится
code segment
assume cs:code,ds:code,ss:code
org 100h
start:
mov ax,100h
push ax
ret
code ends
end start


--------------------
Программа делает то что вы ей приказали а не то что бы ВАМ хотелось бы.
МЕРФИ
---------------------
RTFM - Read the fucking manual
---------------------
http://www.livejournal.com/users/lonley_raven/
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Бывалый
***

Группа: Пользователи
Сообщений: 234
Пол: Мужской
Реальное имя: AHTOH

Репутация: -  1  +


т.е RET это что-то типа: прогрмма достает из стека адрес и переходит на него..

а если в стеке ничего нету то в конце проги можно вместо INT20h поставить RET и программа тоже завершиться.. (говорят лучше так делать (ну с помощью RET))


--------------------
Хочу в репу !

Cмотри,а то ведь получишь!
Админ.

Не получит - его фиг догонишь!
Админ №2.

P.S Вы еще третьего админа притащите сюда :D
ваш аффтар :D
Звали? :D (админ № не помню какой)

ха больше нифига не напишете
афтар

Уверен? (Moderator)
А еще можно ? (супмодер)
Хватит его мучать ! Избили уж... (админ)
Не хватит. я тоже напишу (тоже Админ)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Lonely_Raven
****

Группа: Пользователи
Сообщений: 640
Пол: Мужской

Репутация: -  1  +


ну дык поэксперементируй и смотри в отладчике
можно использовать маш-ный код
0c3h - близкий
0cbh - дальний
т.е. прямо в код вставить
db 0c3h
; или
db 0cbh


--------------------
Программа делает то что вы ей приказали а не то что бы ВАМ хотелось бы.
МЕРФИ
---------------------
RTFM - Read the fucking manual
---------------------
http://www.livejournal.com/users/lonley_raven/
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 19.04.2024 6:53
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name