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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 28.04.2017, 13:41   #41
седьмой
Форумчанин
 
Регистрация: 17.07.2012
Сообщений: 140
По умолчанию

Цитата:
Сообщение от waleri Посмотреть сообщение
Ну как знаете, желаю удачи!
Спасибо, вы мне и так очень много помогли!
седьмой вне форума Ответить с цитированием
Старый 28.04.2017, 15:46   #42
Pavia
Лис
Старожил
 
Аватар для Pavia
 
Регистрация: 18.09.2015
Сообщений: 2,409
По умолчанию

Ваши 100h тут не причём. Это один маленький частный случай. И элементарно переопределяется через Assume в ассемблере. Надо, конечно при этом понимать что BSP никуда не девается.

И вообще в этом мире всё относительно.

Есть карта памяти компьютера. Есть карта памяти ОС. Есть карта памяти программы.

У компьютера есть линейная модель памяти. Есть сегментная. Страничную не берём, её в досе нет. Один линейный адрес может кодироваться 4096 различными адресами сегментного вида.


Про ОС. Если вы работает под отладчиком у вас будут одни линейные адреса. Без отладчика другие линейные адреса.

Про исполняемый файл. И его отображение как память программы. Есть код, данные, стек. А данные ещё делятся на статические и динамические. Статические на инициализированные и не инициализированные.

COM и EXE имеют разное устройство. EXE тоже разные бывают.

Динамическая память тоже выделяется по разному в зависимости от компилятора и ОС. Если не путаю то в вашем компиляторе выделение динамической памяти идёт через ДОС. Он разбивает всю оставшуюся память на блоки по 64 кб (там ещё 24 байта резервируется). И далее память выделяется внутри сегмента через структуру неминуемую список свободных блоков. (название пусть вас не смущает, это не простой список, а отдельная самостоятельная структура)

А если про ассемблер твердить, то в компьютере есть несколько регистров DS,ES, SS, CS. Компилятор может их использовать для сегмента. А может и произвольно отсчитывать. Поэтому адреса перемешиваются.
Короче ваш тест мог показать всё что угодно.

У вас слишком обширные вопросы. Общим и отвечу.
Читаем.
Д. В. Иртеrов Введение в операционные системы.

Хотя там конечно не ДОС. Но в целом примерно так.
А по досу:
http://bitsavers.trailing-edge.com/p...uide_Jan95.pdf
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал .
Pavia вне форума Ответить с цитированием
Старый 28.04.2017, 18:17   #43
седьмой
Форумчанин
 
Регистрация: 17.07.2012
Сообщений: 140
По умолчанию

Цитата:
Сообщение от Pavia Посмотреть сообщение
Ваши 100h тут не причём. Это один маленький частный случай
Спасибо, Вы здорово все расписали, очень интересно, обязательно все перечитаю, когда доделаю свою работу. У меня оказалось все проще (относительно). На плате есть свой МК и своя память, туда все и записывается, и у драйвера есть специальные функции для записи по страницам. Но все равно всем спасибо, информация очень ценная, которую Вы мне дали, если самостоятельно все читать по книгам, то читать можно бесконечно, а так вы меня направили в нужное русло и работа пошла работаться дальше...
седьмой вне форума Ответить с цитированием
Старый 28.04.2017, 18:20   #44
седьмой
Форумчанин
 
Регистрация: 17.07.2012
Сообщений: 140
По умолчанию

Цитата:
Сообщение от Pavia Посмотреть сообщение
Хотя там конечно не ДОС. Но в целом примерно так.
А по досу:
http://bitsavers.trailing-edge.com/p...uide_Jan95.pdf
И книга очень интересная, главное объемная, есть что почитать, спасибо большое!
седьмой вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Данные вводятся на веб странице, но хранятся в .... Ципихович Эндрю Общие вопросы Web 35 23.09.2016 08:10
Данные о температуре воздуха и количестве осадков за декаду апреля хранятся в массивах. Определить количество осадков... zzz99 Помощь студентам 8 13.03.2014 17:33
Байты или то, как хранятся данные RussDragon Общие вопросы C/C++ 10 11.06.2013 08:50
Дан массив, в котором хранятся данные о расписании поездов, определить поезда на станции (C++) nurtay1994 Общие вопросы C/C++ 1 29.04.2013 08:26
где хранятся данные при работе с dll ? xrob Общие вопросы Delphi 17 19.04.2013 23:18