Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Обращение к памяти, байт F000:FEEE 
:(
    Опции темы
RedShadow
Дата 15.12.2005, 20:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 11.12.2005

Репутация: нет
Всего: нет



В байте F000:FEEE хранится полезная(гм...) инфа о типе компа. ОК, пишем прогу:
Код

#include <iostream>
void main(void)
{
  char *comp=(char *)0xF000FFFE;
  cout<<"Your comp is ";
  switch (*comp)
   {
     case (char)0xff: cout<<"IBM PC.";break;
     case (char)0xfe: cout<<"IBM PC XT." ;break;
     case (char)0xfd: cout<<"IBM PCjr." ;break;
     case (char)0xfc: cout<<"IBM PC AT." ;break;
     default: cout<<"is...is...is...what is it?";
   }
}

Как нельзя читать?! smile Люди не пинайте новичка, помогите разобраться, как получить шо хранится в конкретном байте оперативки невзирая на происки гнусного Виндоза хэ пи!
PM MAIL   Вверх
Aleksandor
Дата 15.12.2005, 20:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Практик
**


Профиль
Группа: Участник
Сообщений: 272
Регистрация: 22.11.2005
Где: россия, зеленогра д

Репутация: 0
Всего: 12



Ого, вспомним время золотое smile
Windows все таки посложнее будет чем монитор для бэкашки 86 года smile


--------------------
Call out Gouranga be happy!!!
Gouranga Gouranga Gouranga ....
That which brings the highest happiness!!
PM MAIL   Вверх
RedShadow
Дата 16.12.2005, 07:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 11.12.2005

Репутация: нет
Всего: нет



Чтож, а кроме шуток, есть способ выцарапать значение этого несчастного байта или нет? Просто аналогичные проги на
асме и Паскале работали как надо.
PM MAIL   Вверх
Aleksandor
Дата 16.12.2005, 07:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Практик
**


Профиль
Группа: Участник
Сообщений: 272
Регистрация: 22.11.2005
Где: россия, зеленогра д

Репутация: 0
Всего: 12



На Windows 98 и младших вроде можно, а на 2000 и XP
если байт в адресном пространстве режима ядра-то нет.



--------------------
Call out Gouranga be happy!!!
Gouranga Gouranga Gouranga ....
That which brings the highest happiness!!
PM MAIL   Вверх
adonin
Дата 16.12.2005, 19:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 166
Регистрация: 16.12.2005
Где: Новочеркасск Рост овская обл.

Репутация: 2
Всего: 5



Тип компа можно почитать и в реестре, зачем лезть в чужое адресное пространство? Но если очень надо, то можно используя CreateRemoteThread() создать поток в интересующем Вас процессе, в этом потоке выполнить чтение байта. Передать своей проге значение байта можно используя средства ОС interprocess communications.
--------------------
Тот, кто слизывает мед с крапивы, платит за него слишком дорого. (Томас ФУЛЛЕР)
PM MAIL   Вверх
p0s0l
Дата 16.12.2005, 22:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Г-н Посол
****


Профиль
Группа: Экс. модератор
Сообщений: 3668
Регистрация: 13.7.2003
Где: 58°38' с.ш. 4 9°41' в.д.

Репутация: 2
Всего: 112



Если нужно прочитать биос, то это можно реализовать через секцию PhysicalMemory (маппим адрес 0xFF000, читаем 0xFFE), но имхо, всё-таки нужно пользоваться нормальными человеческими средствами...



--------------------
С уважением, г-н Посол.
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0587 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.