Форум программистов, компьютерный форум, киберфорум
Наши страницы

C++

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.83
Jimbo-Leps
1 / 1 / 1
Регистрация: 05.11.2011
Сообщений: 15
#1

Абсолютная и Относительная адресация. - C++

17.02.2012, 18:05. Просмотров 1611. Ответов 6
Метки нет (Все метки)

здравствуйте у меня такой вопрос.
Вот я слышал что есть Абсолютный и Относительный адрес.
из определения я понял что абсолютный адрес,это динамический адрес в программе и он после каждого запуска приложения может менятся,
А относительный адрес всегда один и тот же ,
то есть вот запустил я программу и по аддресу 0x0000F4A1 всегда хранится одно и тоже значение.
и адрес этого значения не меняется,
подскажите пожалуйста как находится относительный адрес.
просто нужно найти адрес float переменной,который не когда не меняется.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.02.2012, 18:05
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Абсолютная и Относительная адресация. (C++):

Адресация в String - C++ Builder
Условие задачи: Дан текст, содержащий от 2 до 50 слов, в каждом из которых от 1 до 7 строчных латинских букв; между соседними словами не...

Адресация процедур на asm (дублирование кода, VirtualProtect) - C++ Builder
Здравствуйте. Не вдаваясь в мотивацию, приведу упрощенный пример для демонстрации проблемы. Помогите, пожалуйста, в ее устранении или...

Определить общее количество элементов в целочисленном массиве, абсолютная величина которых больше 3-х - C++ Builder
1. Определить общее количество элементов в массиве из 10 целых чисел, абсолютная величина которых больше значения 3. 2. Массив содержит...

Абсолютная разность углов. - C++
Здравствуйте! Как найти минимальную разность углов? double alpha = 3,14159; double alpha2 = 175,12359; //double difference = ? ...

Докажите, что относительная ошибка расчета формулы (x-y)(x+y) меньше разности квадратов x и y - C++
Здравствуйте. Подскажите пожалуйста. у меня задание: Докажите, что относительная ошибка расчета формулы (x-y)(x+y) меньше, чем у...

IEEE 754 абсолютная ошибка - C++
Народ подскажи как считать абсолютную ошибку у чисел. В частности хотел бы пример для числа 3F800000

6
Jupiter
Каратель
Эксперт С++
6559 / 3980 / 227
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
17.02.2012, 18:07 #2
абсолютный адрес + смещение и есть относительный адрес
1
Jimbo-Leps
1 / 1 / 1
Регистрация: 05.11.2011
Сообщений: 15
17.02.2012, 18:56  [ТС] #3
спасибо с этим разобрался,теперь следующее.
есть ид процесса,как найти базовый адрес этого процесса?
0
CheshireCat
Эксперт С++
2895 / 1244 / 78
Регистрация: 27.05.2008
Сообщений: 3,397
17.02.2012, 20:38 #4
А в какой системе-то?
В Windows подавляющее большинствор (~99%) процессов имеют базовый адрес 0x00400000.
1
Jimbo-Leps
1 / 1 / 1
Регистрация: 05.11.2011
Сообщений: 15
17.02.2012, 21:22  [ТС] #5
Цитата Сообщение от CheshireCat Посмотреть сообщение
А в какой системе-то?
В Windows подавляющее большинствор (~99%) процессов имеют базовый адрес 0x00400000.
Я правильно понял ? процесс у которого самый высокий приоритет имеет базовый адрес 0x00400000 в системе виндоус?
0
CheshireCat
Эксперт С++
2895 / 1244 / 78
Регистрация: 27.05.2008
Сообщений: 3,397
17.02.2012, 21:35 #6
Нет, неправильно. Приоритеты процессов никак не связаны с их базовыми адресами.
В Винде каждый процесс запускается в своем собственном виртуальном адресном пространстве. Его базовый адрес в этом виртуальном адресном пространстве, как правило, 0x00400000. Как именно виртуальное АП процесса отображается на физическую память - тебе знать не нужно, этим занимается операционная система. Любая страница виртуального АП может быть вытеснена на диск по усмотрению ОС, а потом, когда вновь понадобится - подгружена с диска, причем может оказаться совершенно по другому физическому адресу. Сопоставлением физических и логических адресов занимается ОС.
1
kravam
быдлокодер
1702 / 889 / 45
Регистрация: 04.06.2008
Сообщений: 5,498
20.02.2012, 21:01 #7
Цитата Сообщение от Jimbo-Leps Посмотреть сообщение
есть ид процесса,как найти базовый адрес этого процесса?
Здесь находится код, который ищет полный путь к "файлу-создателю", нужный тебе адрес и прочая. (передаёшь ListProcessModules PID этого процесса)
0
20.02.2012, 21:01
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.02.2012, 21:01
Привет! Вот еще темы с ответами:

Адресация методом Айлиффа - C++
Необходимо создать адресацию в 4-х мерном массиве(base) методом Aйлиффа. Вот чето не фурычит, ошибка памяти при запуске. #include...

Косвенная адресация объектов - C++
Здравствуйте есть необходимость собрать адреса созданных объектов в массив количество их известно . ну к примеру 5 штук. QObject ** Obj...

Адресация на другой срр файл - C++
всем привет можете подсказать как можно связать 2 срр файла сделал отдельно менюшку и эмулятор, как прописать чтоб при нажатии в меню...

Как происходит адресация #include? - C++
Допустим есть 4 файла: Файл sum.cpp который хранится к примеру в папке D:\source1; int sum(int x, int y){ return x + y;} Файл sum.cpp...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru