Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.09.2009, 15:01   #1
NSvirus
пропагандирую жизЪ
Форумчанин
 
Аватар для NSvirus
 
Регистрация: 19.03.2007
Сообщений: 950
По умолчанию Эффективный и физические адреса

Здравствуйте, сегодня был экзамен и в одном из заданий было следующее:

add ax,[di+10] , где ax=ABCD, di=2456, ds=3756
ячейка памяти=4867

найти: физический и эффективный адрес. Результат(сделано) и состояние флагов. Объясните пожалуйста как они находятся и как меняются флаги в зависимости от действий??

И еще: возможен ли такой вид-
...
rez dw ?
...
mov rez,ax
...
mov rez,rez/2 ???
Если нет, как осуществить деление числа, хранящегося в переменной?
Посторонним В.
NSvirus вне форума Ответить с цитированием
Старый 23.09.2009, 15:30   #2
Goodwin98
equ asm
Участник клуба
 
Аватар для Goodwin98
 
Регистрация: 02.05.2009
Сообщений: 1,605
По умолчанию

эффективный 2456+10 = 2466
физический 37560+2456+10 = 399C6

Деление переменной на 2 - shr rez,1

Вроде так.
Какой вопрос - такой ответ. Не забываем пользоваться поиском, гуглом.
Помощь в выполнении работ по ассемблеру ICQ:2725322O4
Goodwin98 вне форума Ответить с цитированием
Старый 23.09.2009, 15:40   #3
NSvirus
пропагандирую жизЪ
Форумчанин
 
Аватар для NSvirus
 
Регистрация: 19.03.2007
Сообщений: 950
По умолчанию

а для чего давалась ячейка памяти??
Посторонним В.
NSvirus вне форума Ответить с цитированием
Старый 23.09.2009, 15:46   #4
Goodwin98
equ asm
Участник клуба
 
Аватар для Goodwin98
 
Регистрация: 02.05.2009
Сообщений: 1,605
По умолчанию

Чтобы получить результат от сложения и узнать флаги.
Кстати в данном случае будет включаться флаг SF т.к. получается число со знаком. Флаг СF выключен, т.к. переполнения не было.
Какой вопрос - такой ответ. Не забываем пользоваться поиском, гуглом.
Помощь в выполнении работ по ассемблеру ICQ:2725322O4
Goodwin98 вне форума Ответить с цитированием
Старый 23.09.2009, 16:33   #5
NSvirus
пропагандирую жизЪ
Форумчанин
 
Аватар для NSvirus
 
Регистрация: 19.03.2007
Сообщений: 950
По умолчанию

о чем ты?? ведь результатом будет: d033 (abcd+10+2456)
Посторонним В.
NSvirus вне форума Ответить с цитированием
Старый 23.09.2009, 16:45   #6
Goodwin98
equ asm
Участник клуба
 
Аватар для Goodwin98
 
Регистрация: 02.05.2009
Сообщений: 1,605
По умолчанию

С чего бы это???
ax + [2466] == abcd + 4867 == F434
Какой вопрос - такой ответ. Не забываем пользоваться поиском, гуглом.
Помощь в выполнении работ по ассемблеру ICQ:2725322O4
Goodwin98 вне форума Ответить с цитированием
Старый 23.09.2009, 16:54   #7
NSvirus
пропагандирую жизЪ
Форумчанин
 
Аватар для NSvirus
 
Регистрация: 19.03.2007
Сообщений: 950
По умолчанию

add ax,[di+10]
ABCD + 2456 + 10 - я что-то не так понял??
Посторонним В.
NSvirus вне форума Ответить с цитированием
Старый 23.09.2009, 17:00   #8
Goodwin98
equ asm
Участник клуба
 
Аватар для Goodwin98
 
Регистрация: 02.05.2009
Сообщений: 1,605
По умолчанию

в скобках вычисляется аддрес ячейки, с содержимым которой будет складываться регистр
add ax,[di+10]
di + 10 == 2456 - аддрес ячейки
содержимое ax складывается с этой ячейкой
ABCD + 4867 == F434
Какой вопрос - такой ответ. Не забываем пользоваться поиском, гуглом.
Помощь в выполнении работ по ассемблеру ICQ:2725322O4

Последний раз редактировалось Goodwin98; 23.09.2009 в 17:03.
Goodwin98 вне форума Ответить с цитированием
Старый 23.09.2009, 17:15   #9
NSvirus
пропагандирую жизЪ
Форумчанин
 
Аватар для NSvirus
 
Регистрация: 19.03.2007
Сообщений: 950
По умолчанию

а т.е в ячейке с адресом [2456] хранится 4867?
понял.
физический 3756(0)+2456+10 = 399C6
нуль в скобках-опечатка?
Посторонним В.
NSvirus вне форума Ответить с цитированием
Старый 23.09.2009, 17:21   #10
Goodwin98
equ asm
Участник клуба
 
Аватар для Goodwin98
 
Регистрация: 02.05.2009
Сообщений: 1,605
По умолчанию

Цитата:
нуль в скобках-опечатка?
нет. Читаем про аддресацию
Какой вопрос - такой ответ. Не забываем пользоваться поиском, гуглом.
Помощь в выполнении работ по ассемблеру ICQ:2725322O4
Goodwin98 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Установка 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