|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
05.02.2012, 19:59 | #1 |
Регистрация: 02.12.2010
Сообщений: 8
|
Работа со стэком (assembler)
Начал изучение ассемблера и дошёл до интересного момента. Часть кода:
Код:
Спасибо) |
05.02.2012, 21:04 | #2 | |
Пользователь
Регистрация: 27.01.2012
Сообщений: 37
|
Цитата:
|
|
05.02.2012, 21:15 | #3 |
Непрофессионал
Участник клуба
Регистрация: 01.01.2008
Сообщений: 1,405
|
Здесь всё правильно.
Так как изначально у вас сегмент стека и сегмент кода указывают на одно и то же (т.е. одинаково настроены), то команда mov sp, offset metka, устанавливает указатель стека в сегмент кода, а именно на конец команды mov cx, 5. Поэтому следующая команда push, переписывает исполняемый код, т.е. в данном случае меняет команду mov cx, 5 на команду mov cx, 9. Которая собственно затем и исполняется.
И чем больше я узнавал людей, тем больше мне нравились компьютеры.
------------------------------------ Страничка с моими программками http://ulex-masm.ru |
05.02.2012, 21:15 | #4 |
Регистрация: 02.12.2010
Сообщений: 8
|
alexey2, ты прав, на 09h - я не доглядел) А ответ на основной вопрос можешь дать?
Последний раз редактировалось Pillllot; 05.02.2012 в 21:40. |
05.02.2012, 21:21 | #5 | |
Регистрация: 02.12.2010
Сообщений: 8
|
Цитата:
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Работа с массивом (assembler) | sirex | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 19 | 28.01.2010 14:35 |
Работа с массивами (assembler) | erazer89 | Помощь студентам | 3 | 19.12.2008 21:25 |
Работа с массивами (assembler) | deni | Помощь студентам | 2 | 12.12.2008 10:28 |
незнаю что сделать со СТЭКом | Misho0k | Паскаль, Turbo Pascal, PascalABC.NET | 4 | 24.05.2008 23:01 |