|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
23.09.2009, 15:01 | #1 |
пропагандирую жизЪ
Форумчанин
Регистрация: 19.03.2007
Сообщений: 950
|
Эффективный и физические адреса
Здравствуйте, сегодня был экзамен и в одном из заданий было следующее:
add ax,[di+10] , где ax=ABCD, di=2456, ds=3756 ячейка памяти=4867 найти: физический и эффективный адрес. Результат(сделано) и состояние флагов. Объясните пожалуйста как они находятся и как меняются флаги в зависимости от действий?? И еще: возможен ли такой вид- ... rez dw ? ... mov rez,ax ... mov rez,rez/2 ??? Если нет, как осуществить деление числа, хранящегося в переменной?
Посторонним В.
|
23.09.2009, 15:30 | #2 |
equ asm
Участник клуба
Регистрация: 02.05.2009
Сообщений: 1,605
|
эффективный 2456+10 = 2466
физический 37560+2456+10 = 399C6 Деление переменной на 2 - shr rez,1 Вроде так. |
23.09.2009, 15:40 | #3 |
пропагандирую жизЪ
Форумчанин
Регистрация: 19.03.2007
Сообщений: 950
|
а для чего давалась ячейка памяти??
Посторонним В.
|
23.09.2009, 15:46 | #4 |
equ asm
Участник клуба
Регистрация: 02.05.2009
Сообщений: 1,605
|
Чтобы получить результат от сложения и узнать флаги.
Кстати в данном случае будет включаться флаг SF т.к. получается число со знаком. Флаг СF выключен, т.к. переполнения не было. |
23.09.2009, 16:33 | #5 |
пропагандирую жизЪ
Форумчанин
Регистрация: 19.03.2007
Сообщений: 950
|
о чем ты?? ведь результатом будет: d033 (abcd+10+2456)
Посторонним В.
|
23.09.2009, 16:54 | #7 |
пропагандирую жизЪ
Форумчанин
Регистрация: 19.03.2007
Сообщений: 950
|
add ax,[di+10]
ABCD + 2456 + 10 - я что-то не так понял??
Посторонним В.
|
23.09.2009, 17:00 | #8 |
equ asm
Участник клуба
Регистрация: 02.05.2009
Сообщений: 1,605
|
в скобках вычисляется аддрес ячейки, с содержимым которой будет складываться регистр
add ax,[di+10] di + 10 == 2456 - аддрес ячейки содержимое ax складывается с этой ячейкой ABCD + 4867 == F434
Какой вопрос - такой ответ. Не забываем пользоваться поиском, гуглом.
Помощь в выполнении работ по ассемблеру ICQ:2725322O4 Последний раз редактировалось Goodwin98; 23.09.2009 в 17:03. |
23.09.2009, 17:15 | #9 |
пропагандирую жизЪ
Форумчанин
Регистрация: 19.03.2007
Сообщений: 950
|
а т.е в ячейке с адресом [2456] хранится 4867?
понял. физический 3756(0)+2456+10 = 399C6 нуль в скобках-опечатка?
Посторонним В.
|
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Установка IP адреса | Raivolo | Работа с сетью в Delphi | 11 | 11.02.2009 18:03 |
абсолютные адреса | kano | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 2 | 01.07.2008 20:49 |
Конфликт IP адреса ... | Ronni10 | Операционные системы общие вопросы | 4 | 28.02.2008 14:14 |
Смена IP-адреса | Македонский | Работа с сетью в Delphi | 13 | 06.02.2008 19:02 |
2 одинаковых Ip адреса | Alar | Работа с сетью в Delphi | 12 | 24.12.2006 10:21 |