![]() |
|
|
![]()
|
|
| Only1 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 23.7.2010 Репутация: нет Всего: нет |
Здравствуйте уважаемые знатоки) У меня есть очень специфическая просьба, немножко наивная и странная но все-же: есть несколько заданий, которые нужны для вступления в университет после колледжа (но проблема в том что в колледже Ассемблер не преподавался... :no-sad: ) Времени для изучения нету..(остался 1 день) Надо просто их решить. Если у кого-то есть время и желание помогите пожалуйста. Вот задания:
1) Регистры процессора І8086 находятся в следующем состоянии: AX=BCA0, BX=0AA0, CX=C173, DX=10F0, SI=A000, DI=FF00,BP=0F6A, CS=A000, SS=2F00,ES=F000, IP=1040. Каким будет физический адрес ячейки памяти в следующей команде: MOV BX,[BX][DI+FFF4]FEF4 2)Что нужно сделать для изменения регистров из начального состояния AX=00h, SP=00h, IP=00h к окончательному AX=0A0Ah, SP=00h, IP=0A0Ah 3)В каком случае используется переход по условию командой JA? Заранее Спасибо!) |
|||
|
||||
| bugmenot1 |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 59 Регистрация: 8.5.2008 Репутация: нет Всего: 0 |
Приветствую Only1
По первому нужно искать... 2)Первоначальная установка регистров может быть выполнена с помощью команд
IP это адрес следующей команды, в теории на момент выполнения программы возможно и может быть равен 00h, однако на практике зависит от среды и ОС. В Visual Studio под Windows на момент запуска программы он равнялся 10h. Требуемая установка регистров может быть осуществлена как
Причём последняя команда не обязательна, так как до выполнения программы в SP и так требуемая величина. IP менялся на каждой команды на увеличение (3h), так что ответ будет по нему следующий: после выполнения (0A0Ah:3 = 358h) - 856 команд. 3)jsf.boom.ru/programm/assembler/page6.htm -> JA Переход если выше... Если что не так не обессудьте. Это сообщение отредактировал(а) bugmenot1 - 23.7.2010, 23:26 |
||||
|
|||||
| Logree |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 331 Регистрация: 22.11.2006 Где: Самара Репутация: нет Всего: 2 |
и будь что будет Это сообщение отредактировал(а) Logree - 25.7.2010, 22:33 -------------------- Самый распространенный способ дебага пятиста строк ассемблерного кода - очень долгий, очень пристальный и очень задумчивый взгляд. |
|||
|
||||
| iff |
|
|||
![]() Администратор ![]() ![]() Профиль Группа: Участник Сообщений: 949 Регистрация: 23.3.2007 Репутация: 4 Всего: 16 |
По первому:
Адрес ячейки в формате сегмент:смещение будет DS:0888h. По скольку значение регистра DS не указано, то физический адрес вычислить невозможно (а он равен DS*10h+0888h) -------------------- DOS... Синей пеленой экран заполнил чистый DOS Мышь... Стала вдруг квадратной, потеряла форму мышь... Я разбил окно, девяностопятое мастдайное окно, И поставил DOS, и тогда увидел: Это счастье, — вот оно. |
|||
|
||||
| Bro058 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 28.1.2010 Репутация: нет Всего: нет |
Товарищи-форумчане помогите с куском кода!
Суть проста: Допусти у меня записан в однобайтовую переменную символ А, у этого символа ASCII-код = 65. А мне надо вывести на монитор 255-65 = 190, то есть цифру 190. Понимаю что надо как то переводить из оной системы в другую, но полностью запутолся=( Помогите... |
|||
|
||||
| 500mhz |
|
|||
![]() шайтан ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1017 Регистрация: 5.5.2008 Где: Киев / Italy Репутация: 1 Всего: 14 |
-------------------- |
|||
|
||||
![]()
|
| Правила форума "Asm для начинающих" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Asm для начинающих | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |