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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
kentaw
421 / 129 / 4
Регистрация: 24.02.2009
Сообщений: 1,123
#1

получить значению ячеека 0x22ff20 - C++

02.03.2011, 13:05. Просмотров 678. Ответов 10
Метки нет (Все метки)

В ячееке 0x22ff20 есть значения 123. Как получить эту значению?
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <cstdlib>
#include <iostream>
 
using namespace std;
 
int main(int argc, char *argv[])
{
    int hex=0x22ff20;
    cout<<*hex<<endl;
    system("PAUSE");
    return EXIT_SUCCESS;
}
Эта выдает ошибка...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.03.2011, 13:05
Здравствуйте! Я подобрал для вас темы с ответами на вопрос получить значению ячеека 0x22ff20 (C++):

Как вставить примечанию в ячеек так, чтоб техт примечание взялся из другого ячеека - MS Excel
Как вставить примечанию в ячеек так, чтоб техт примечание взялся из другого ячеека

Как вставить примечанию в ячеек так, чтоб техт примечание взялся из другого ячеека - VBA
Как вставить примечанию в ячеек так, чтоб техт примечание взялся из другого ячеека

Получить значению по указателю - C++/CLI
Привет, помогите пожалуйста, хочу присвоить значение по одному указателю другому. Делаю для своего класса, хочу чтобы побитовое копирование...

.NET 4.x Получить ключ по значению словаря - C#
Можно ли как нибудь Получить ключ по значению словаря? Причем вариант тупого перебора работает естественно:) Но хотелось бы...

Получить индекс по значению в ListBox - C#
Всем привет! Как реализовать поиск строки (индекса её), с нужным нам текстом, не зная её индекса.

Получить ключ по значению словаря - C#
Как ?

10
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
02.03.2011, 13:17 #2
Но лично у меня там ничего нет)

C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <cstdlib>
#include <iostream>
 
using namespace std;
 
int main(int argc, char *argv[])
{
    int* hex=(int*)(0x22ff20);
    cout<<*hex<<endl;
    system("PAUSE");
    return EXIT_SUCCESS;
}
0
kentaw
421 / 129 / 4
Регистрация: 24.02.2009
Сообщений: 1,123
02.03.2011, 13:55  [ТС] #3
Не получилос.
Ситуация такая:
5 дня тому назад написал такая код и скомпилировал
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <cstdlib>
#include <iostream>
 
using namespace std;
 
int main(int argc, char *argv[])
{
    int *x, y;
    y=123;
    x=&y;
    cout<<"Adres y: "<<x<<endl<<"Znacenie y: ="<<*x<<endl;
    system("PAUSE");
    return EXIT_SUCCESS;
}
Сегодня запустил этого екзеншика, ШОК!, 123 прячится там...

Добавлено через 16 секунд
Не получилос.
Ситуация такая:
5 дня тому назад написал такая код и скомпилировал
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <cstdlib>
#include <iostream>
 
using namespace std;
 
int main(int argc, char *argv[])
{
    int *x, y;
    y=123;
    x=&y;
    cout<<"Adres y: "<<x<<endl<<"Znacenie y: ="<<*x<<endl;
    system("PAUSE");
    return EXIT_SUCCESS;
}
Сегодня запустил этого екзеншика, ШОК!, 123 прячится там...

Добавлено через 10 минут
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <cstdlib>
#include <iostream>
 
using namespace std;
 
int main(int argc, char *argv[])
{
    int* hex=(int*)(0x22ff20);
    cout<<*hex<<endl;
    system("PAUSE");
    return EXIT_SUCCESS;
}
это код выдает 16

Добавлено через 16 секунд
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <cstdlib>
#include <iostream>
 
using namespace std;
 
int main(int argc, char *argv[])
{
    int* hex=(int*)(0x22ff20);
    cout<<*hex<<endl;
    system("PAUSE");
    return EXIT_SUCCESS;
}
это код выдает 16
0
Digit@ll
Brainsbreaker
884 / 362 / 31
Регистрация: 01.02.2011
Сообщений: 1,586
02.03.2011, 13:58 #4
kentaw, ты что на приколе?
0
kentaw
421 / 129 / 4
Регистрация: 24.02.2009
Сообщений: 1,123
02.03.2011, 14:30  [ТС] #5
нет не шучу и не понимаю как это происходить. Может быт мой код
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <cstdlib>
#include <iostream>
 
using namespace std;
 
int main(int argc, char *argv[])
{
    int *x, y;
    y=123;
    x=&y;
    cout<<"Adres y: "<<x<<endl<<"Znacenie y: ="<<*x<<endl;
    system("PAUSE");
    return EXIT_SUCCESS;
}
любит адресу 0x22ff20.

 Комментарий модератора 
Хватит повторять свои сообщения!
0
kazak
3050 / 2371 / 160
Регистрация: 11.03.2009
Сообщений: 5,437
Завершенные тесты: 1
02.03.2011, 14:39 #6
kentaw, это же не реальный физический адрес, а смещение внутри области памяти выделенной для программы. В принципе сдесь нет ничего удивительного.
1
kentaw
421 / 129 / 4
Регистрация: 24.02.2009
Сообщений: 1,123
02.03.2011, 15:23  [ТС] #7
Цитата Сообщение от kazak Посмотреть сообщение
kentaw, это же не реальный физический адрес, а смещение внутри области памяти выделенной для программы. В принципе сдесь нет ничего удивительного.
Спасибо, понял. И еще вопрос возникает: Тогда почему КАЖДЫЙ ДЕНЬ при запуске, выдает тот же адрес?
0
Kastaneda
Jesus loves me
Эксперт С++
4697 / 2901 / 238
Регистрация: 12.12.2009
Сообщений: 7,389
Записей в блоге: 2
Завершенные тесты: 1
02.03.2011, 17:27 #8
Цитата Сообщение от kentaw Посмотреть сообщение
Тогда почему КАЖДЫЙ ДЕНЬ при запуске, выдает тот же адрес?
Цитата Сообщение от kazak Посмотреть сообщение
kentaw, это же не реальный физический адрес, а смещение внутри области памяти выделенной для программы. В принципе сдесь нет ничего удивительного.
0
kentaw
421 / 129 / 4
Регистрация: 24.02.2009
Сообщений: 1,123
02.03.2011, 18:54  [ТС] #9
ок. понял всем спасибо
0
KuKu
1558 / 1036 / 78
Регистрация: 17.04.2009
Сообщений: 2,988
02.03.2011, 18:59 #10
А абсолютный адрес можно узнать как-то ?
0
Kastaneda
Jesus loves me
Эксперт С++
4697 / 2901 / 238
Регистрация: 12.12.2009
Сообщений: 7,389
Записей в блоге: 2
Завершенные тесты: 1
02.03.2011, 19:12 #11
Цитата Сообщение от KuKu Посмотреть сообщение
А абсолютный адрес можно узнать как-то ?
Да, можно. Нужно взять значение сегментного регистра (любого, под виндой они все равны) и смещение, и проделать с ними определенные манипуляции. Не простое сложение, а как то по хитрому там это делается, я не помню. Это легко можно нагуглить.

Добавлено через 6 минут
Виртуальный адрес при страничном распределении может быть представлен в виде пары (p, s), где p - номер виртуальной страницы процесса (нумерация страниц начинается с 0), а s - смещение в пределах виртуальной страницы. Учитывая, что размер страницы равен 2 в степени к, смещение s может быть получено простым отделением k младших разрядов в двоичной записи виртуального адреса. Оставшиеся старшие разряды представляют собой двоичную запись номера страницы p.
При каждом обращении к оперативной памяти аппаратными средствами выполняются следующие действия:
1.на основании начального адреса таблицы страниц (содержимое регистра адреса таблицы страниц), номера виртуальной страницы (старшие разряды виртуального адреса) и длины записи в таблице страниц (системная константа) определяется адрес нужной записи в таблице,
2.из этой записи извлекается номер физической страницы,
3.к номеру физической страницы присоединяется смещение (младшие разряды виртуального адреса).
Чтоб это понять нужно знать, что такое страничное распределение памяти.
2
02.03.2011, 19:12
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.03.2011, 19:12
Привет! Вот еще темы с ответами:

Получить информацию о хим. элементе по значению - Java SE
Нужно создать типо хим словарик: Нужно вместить информацию не менее чем о 4-х хим элементах (например, название, масса, номер) в...

Как в словаре получить ключ по значению? - C#
Как(какой) словарь использовать, что бы можно возвращать как значение по ключу, так и ключ по значению. т.е. 1 = Вася 2 = Петя ...

получить данные из БД SQL server по значению textbox - C#
Добрый день. Сделал програмулину которая записывает инфу с текстбоксов в бд, все нормально работает. private void...

Разбор xml. Получить элемент по значению аттрибута - Java SE
Доброго времени суток. есть строка, представляющая из себя фрагмент xml файла String xml = { &quot;&lt;?xml version=&quot;1.0&quot;...


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

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

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