Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Что происходит с освободившейся от указателей памятью? [gcc-4.7.2] Что происходит в следующих случаях с памятью выделенную под переменные? 1) Объявление в операторных скобках: { int variable; } 2) Присвоение адреса указателю: int *i_var; { int variable = 5; https://www.cyberforum.ru/ cpp-beginners/ thread833310.html C++ Передача Указателя На Двумерный Массив В Функцию
Как изменить код, чтобы массив объявлялся в main() и передавался в input_strings(). Код: #define MAXLENGTH 129 #define MAXSIZE 20 char arr_str; int input_strings(){ int i,n;
C++ Не сортирует.В чем ошибка? и ещё нужно добавить средний бал по каждому студенту #include <iostream> #include <string.h> #include <cstring> #include <stdio.h> #include <fstream> #include <sstream> #include <conio.h> using namespace std; class table https://www.cyberforum.ru/ cpp-beginners/ thread833286.html C++ Как зная площадь треугольника установиться его координаты. https://www.cyberforum.ru/ cpp-beginners/ thread833277.html
Как зная площадь треугольника установиться его координаты. Естественно любые. Например площадь = 5 тогда координаты : 0 0 4 2 5 0
C++ Функции. Написать функцию, удаляющую элемент массива
Написать функцию, удаляющую элемент массива. Все элементы после него сдвигаются на один влево, а последний равен нулю.
C++ Сортировка, метод шелла Всем доброй ночи, задача, дан список студентов и у каждого 5 оценок, отсортировать сумму оценок по убыванию и данные в новый файл, вот мой код. Помогите исправить ошибку #include <iostream> #include <fstream> #include <string> #include <iomanip> using namespace std; ifstream in("input.txt"); ofstream out("output.txt"); https://www.cyberforum.ru/ cpp-beginners/ thread833274.html
C++ Задача на исключение https://www.cyberforum.ru/ cpp-beginners/ thread833269.html
Помогите. Программа компилируется, но не работает, покажите мне ошибку пожалуйста, что я не так сделал? #include <iostream> #include <iomanip> #include <cmath> using namespace std; double f(double x) {
C++ Задача со структурами
Всем доброго времени суток, есть такая задача, дан файл, который содержит ФИО, курс, группа и результат забега, в новый файл нужно занести информацию о тех, кто перешел норматив. У меня в программе идет чтение из файла по целой строке, но как сделать, что бы данные заносились в массив до пробела. #include <iostream> #include <fstream> #include <iomanip> using namespace std; ifstream...
C++ Строка: Найти слова с тремя гласными символами, гласные символы заменить на "-" https://www.cyberforum.ru/ cpp-beginners/ thread833257.html
задание на рисунке
C++ Массив: Упорядочить строки массива по убыванию задание на рисунке https://www.cyberforum.ru/ cpp-beginners/ thread833256.html
Использование подпрограммы функции (найти значение элементов массива по формуле) C++
задание на рисунке
C++ Как реализовать перегрузку операторов? https://www.cyberforum.ru/ cpp-beginners/ thread833243.html
Векторы: полярные координаты (длина и угол), конструктор по умолчанию, конструктор с параметрами, конструктор копирования, метод поворота вектора на любой угол, метод вывода вектора, перегрузка операторов деления, присвоение, добавление. Нужно описать класс, три объекта B1, B2, B3, используя различные конструкторы, "уменьшить" в 2 раза объект B2, "развернуть" объект B3 на 45 градусов,...
4226 / 1795 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
17.05.2014, 15:25 0

Как инициализировать указатель произвольным адресом? - C++ - Ответ 6184749

17.05.2014, 15:25. Показов 4686. Ответов 30
Метки (Все метки)

Ответ

Цитата Сообщение от Kastaneda Посмотреть сообщение
Суть в следующем - защита происходит по CPL и по флагам в записи каталогах/таблицах страниц.
А кто каталоги формирует?

Добавлено через 1 минуту
Цитата Сообщение от Kastaneda Посмотреть сообщение
Когда ОС только загружается, она загружается в real mode, в этом режиме формируются каталоги/таблицы страниц, где и выставляются нужные флаги. Потом код загрузчика переводит процессор в protected mode (если мы говорим о 32х битных ОС) и дальше уже загружается непостредственно ОС.
А ничего, что без возможности манипулировать таблицами каталога страниц многозадачная ось не сможет дефрагментировать свободную память и быстро свалится?

Добавлено через 2 минуты
Цитата Сообщение от Kastaneda Посмотреть сообщение
и когда эта программа попробует обратиться туда, куда не просят, то защита сработает на уровне процессора (будет GP exception), задача ОС всего лишь корректно обработать это исключение. Сама ОС защитой такого уровня не занимается.
Нет. Задача оси распределить память. Кстати, а как вообще загружать пользовательский процесс, если вся память распределена ещё системным загрузчиком?

Добавлено через 5 минут
Цитата Сообщение от Kastaneda Посмотреть сообщение
Незнаю, что такое TR-DOS, но в real mode нужно сложить базу из сегментного регистра умноженную на 16 со смещением, чтоб получить физический адрес. В других режимах все еще сложнее.
Операционная система дисковой версии спектрума, чей камень вообще не знаком с режимами, а все адреса там физические. На спектруме вопрос о том, сегментная ли у него память, или плоская, - это лишь вопрос интерпретации адресного регистра в качестве регистровой пары восьмибитных регистров, или одиночного шестнаднцатибитного регистра, поддерживаются оба варианта инкремента/декремента адресов. Смещение восьмибитная, адрес шестнадцатибитный, множитель базы 256.

Добавлено через 6 минут
Цитата Сообщение от programina Посмотреть сообщение
А если наделать очень много однобайтовых переменных в весь обьем доступной памяти, то шансы угадать увеличатся?
Зачем вообще угадывать? Или читай маны по статическим адресам, или
C++
1
2
3
4
int x;
int *p;
p=&x;// Здесь программа сама помещает адрес переменной в указатель
std::cout<<*p; //А здесь по этому адресу читаем данные и выводим их в поток
, или
C++
1
2
3
4
int *p;
p=new int;// Здесь уже система помещает адрес переменной в указатель, при этом создавая переменную, имени такая переменная не имеет
std::cout<<*p; //А здесь по этому адресу читаем данные и выводим их в поток
delete p; // После использования надо переменную удалить, а указатель на неё освободить
.

Добавлено через 9 минут

Не по теме:

Прочитал надпись на заборе. Отсылку не понял.
Облака на небе сложились во фразу: «А чего сложного? <a href="иди в гугл">fdfds</a>.».



Добавлено через 2 часа 17 минут
И не забывайте о том, что ТС не сказала, что пишет. Если как раз ось, то физический адрес вполне доступен. А если ещё и реального режима, то ещё смешней.

Вернуться к обсуждению:
Как инициализировать указатель произвольным адресом? C++
0
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.05.2014, 15:25
Готовые ответы и решения:

Как инициализировать указатель на структуру?
Помогите розобратся, если можно с краткими примерами... __ как инициализировать указатель на...

Как объявить указатель на массив через typedef и как инициализировать такой тип
Как заставить заработать этот фрагмент кода? INT_L -- указатель на массив из 100 элементов типа...

Как считать матрицу из файла с произвольным типом элементов и произвольным размером матрицы
У меня есть шаблонный класс Matrix, шаблоном является тип элементов. Как можно считать матрицу...

Можно ли инициализировать указатель внутри условия?
Visual Studio выдает ошибку о том, что в строке found = search(n, m, matrix, route,...

30
17.05.2014, 15:25
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.05.2014, 15:25
Помогаю со студенческими работами здесь

Передать указатель в функцию и там его инициализировать
Друзья, как передать указатель в функцию там ему выделить память, чтобы на выходи из функции у меня...

Указатель а (типа int) был с адресом "1С96", вопрос — Какой адрес станет у а, после а+=2?
вопрос значит вот какой: Указатель а (типа int) был с адресом &quot;1С96&quot; , вопрос - Какой адрес станет...

Как получить ссылку на указатель или указатель на указатель в массиве?
В процессе реализации сортировки пузырьком натолкнулся на такую проблему: как поменять значения...

Возможно ли указатель производного класса инициализировать объектом базового класса?
имеется связка наследуемых классов A-&gt;B а от B наследуются одновременно еще два класса B-&gt;C и B-&gt;D...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru