Родились сегодня:
ivan_papus


Лидеры

ID: 259041

Алексеев Владимир Николаевич

Мастер-Эксперт

1168

Россия, пос. Теплоозёрск, ЕАО


ID: 405587

Magic2hand

5-й класс

691


ID: 226425

Konstantin Shvetski

Модератор

318

Россия, Северодвинск


ID: 137394

Megaloman

Мастер-Эксперт

181

Беларусь, Гомель


ID: 405604

Ника

Посетитель

144


ID: 400669

epimkin

Профессионал

119


ID: 405537

hipunova1512

Посетитель

88


8.10.4

05.12.2021

JS: 2.10.3
CSS: 4.6.0
jQuery: 3.6.0
DataForLocalStorage: 2021-12-08 21:46:03-standard


Создание программ на языке Assembler.

Администратор раздела: Зенченко Константин Николаевич (Старший модератор)

Консультация онлайн # 201454

Раздел:  Assembler
Автор вопроса: kolyatimushev (Посетитель)
Дата: 05.10.2021, 10:28 Консультация закрыта
Поступило ответов: 1

Здравствуйте! Прошу помощи в следующем вопросе:
Изучаю ассамблер по книге Калашникова, и меня мучает вопрос почему при старте программы в отладчике AFD, в регистрах dx или cx (чаще в нем) уже содержится какое то число, хотя никакая инструкция ещё не отработала.

-----
Прикрепленные файлы:

Доброго времени суток!

в отладчике AFD, в регистрах dx или cx (чаще в нем) уже содержится какое то число


Отладчик, создает среду, аналогичную MS-DOS, подменяет прерывания, для постоянного контроля над иследуемой программой, копирует работу системного загрузчика. В данном случае - это длина иследуемой программы.

Удачи!

Зенченко Константин Николаевич

Старший модератор
09.10.2021, 13:18
Мини-форум консультации # 201454

q_id

Зенченко Константин Николаевич

Старший модератор

ID: 31795

1

= общий =    05.10.2021, 12:06

cx (чаще в нем) уже содержится какое то число, хотя никакая инструкция ещё не отработала.



smile
Проверьте длину кода в проводнике - нашли совпадение?

=====
Мне безразлично, что Вы думаете о обо мне, но я рад за Вас - Вы начали думать.
smile

q_id

Зенченко Константин Николаевич

Старший модератор

ID: 31795

2

= общий =    05.10.2021, 15:55
kolyatimushev:

Разобрались?

=====
Мне безразлично, что Вы думаете о обо мне, но я рад за Вас - Вы начали думать.
smile

q_id

kolyatimushev

Посетитель

ID: 405378

3

= общий =    05.10.2021, 16:55
Зенченко Константин Николаевич:

Константин, спасибо большое! Да я разобрался, регистр cx считает сколько байт занимают наши операции. Но мне все равно непонятно, для чего это нужно

q_id

Зенченко Константин Николаевич

Старший модератор

ID: 31795

4

= общий =    05.10.2021, 18:00
kolyatimushev:

отладчике AFD


Для понимания - отладчик создает среду, аналогичную DOS, и программа думает, что она запушенна под DOS.

при старте программы в отладчике AFD, в регистрах dx или cx (чаще в нем) уже содержится какое то число, хотя никакая инструкция ещё не отработала.



Это последствие работы загрузщика DOS, вернее загрузщика AFD, который имитирует работу системного загрузщика DOS. Ему как-то нужно знать кол-во загружаемых данных с иследуемого файла.

smile
Можно, считать, что это один из антиотладочных способов против AFD.

=====
Мне безразлично, что Вы думаете о обо мне, но я рад за Вас - Вы начали думать.
smile

q_id

Зенченко Константин Николаевич

Старший модератор

ID: 31795

5

= общий =    05.10.2021, 18:06
kolyatimushev:

Да и в отладчиках есть "баги". smile

=====
Мне безразлично, что Вы думаете о обо мне, но я рад за Вас - Вы начали думать.
smile

Возможность оставлять сообщения в мини-форумах консультаций доступна только после входа в систему.
Воспользуйтесь кнопкой входа вверху страницы, если Вы зарегистрированы или пройдите простую процедуру регистрации на Портале.

Лучшие эксперты раздела

Зенченко Константин Николаевич

Старший модератор

Рейтинг: 228

Коцюрбенко Алексей Владимирович

Старший модератор

Рейтинг: 201

Лысков Игорь Витальевич

Мастер-Эксперт

Рейтинг: 43

Nastya

1-й класс

Рейтинг: 2

Evgen aka Chuma

6-й класс

Рейтинг: 0

cain52

3-й класс

Рейтинг: 0