Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.06.14;
Скачать: [xml.tar.bz2];

Вниз

Pointer,узнать номер ячейки памяти   Найти похожие ветки 

 
MakedoneZ ©   (2005-05-26 16:57) [0]

Здраствуйте.
Как мне сделать так,чтоб присвоив указателю значение номера ячейки памяти той или иной перменной,вывести этот номер на экран.
Заранее спасибо.

PS.Если можно,на примере.


 
ANB ©   (2005-05-26 17:06) [1]

ShowMessage(IntToStr(Integer(pPtr))));


 
VMcL ©   (2005-05-26 17:11) [2]

>>ANB ©   (26.05.05 17:06) [1]

Э-э-э... это не номер ячейки памяти. Хотя автор, наверное, имел в виду именно это.


 
ANB ©   (2005-05-26 17:20) [3]


> VMcL ©   (26.05.05 17:11) [2]
- ну, это вообще адрес, который лежит в указателе.
Некрасиво, но красоту пусть сам наводит.
А что такое тогда номер ячейки памяти ?


 
MakedoneZ ©   (2005-05-27 13:57) [4]


> Хотя автор, наверное, имел в виду именно это.

Вы правы.

И в тоже время,интересно,а номер ячейки и алрес в памяти,это не одно и тоже?
Если нет,то как получить именно номер ячейки,просто интереса ради.
Заранее спасибо.


 
TUser ©   (2005-05-27 14:00) [5]


> И в тоже время,интересно,а номер ячейки и алрес в памяти,это
> не одно и тоже?

Физический адрес в памяти может быть каким угодно. А может его и не быть вообще. Любая программа работает в виртуальном адресном пространстве, а как оно соотносится с реальной памятью - об этом думает ОС.


 
iskatel ©   (2005-05-27 14:01) [6]

это ты так прикалываешься, да? адрес и есть номер "ячейки" размером в 1байт, хотя все относительно, смотря какие ячейки тебя интересуют и откуда считать :-)


 
iskatel ©   (2005-05-27 14:02) [7]

// А может его и не быть вообще.
это как?


 
ANB ©   (2005-05-27 14:04) [8]


> TUser ©   (27.05.05 14:00) [5]
- вопрос то не про различие виртуальной и физической памяти. А про номер ячейки и адрес в памяти.


 
Digitman ©   (2005-05-27 14:08) [9]


> iskatel ©   (27.05.05 14:02) [7]
> // А может его и не быть вообще.
> это как?


а так !
когда страница вытеснена в файл подкачки, ни о каком физ.адресе не м.б. и речи


 
iskatel ©   (2005-05-27 14:10) [10]

ну файл подкачки не считается, это уже архив страницы :-), хотя признаю, про него я забыл :-)))


 
Digitman ©   (2005-05-27 14:22) [11]


> iskatel ©   (27.05.05 14:10) [10]
> ну файл подкачки не считается


а как же без него !?

без него виндовина жить не может) ... на нем и зиждется)


 
MakedoneZ ©   (2005-05-27 16:37) [12]

Ясно.
Спасибо всем.


 
vl_chel ©   (2005-05-27 17:46) [13]

:)
Вы еще забылна, что переменная (Паскаля) может быть размещена компилятором в регистрах процессора.
А вообще, что такое ячейка памяти - на сколько мне подсказывает опыт - это тот термин которым неопытные преподаватели пытаются объяснить начинающим дарованиям, что такое переменная.

2MakedoneZ © не путай терминологию, у переменной есть только понятие адресс в памяти и размер (определен типом переменной)


 
Digitman ©   (2005-05-27 18:00) [14]


> iskatel ©   (27.05.05 14:10) [10]
> ну файл подкачки не считается


тогда не считаются и никакие рассуждения об адресах физ.памяти

для тебя как для прикладника есть только виртуальные (линейные) адреса.


 
MakedoneZ ©   (2005-05-27 19:02) [15]


> это тот термин которым неопытные преподаватели пытаются
> объяснить начинающим дарованиям, что такое переменная.

Ясно,я уже понял,что я делитант.
Спасибо.


 
Defunct ©   (2005-05-28 02:08) [16]

vl_chel ©   (27.05.05 17:46) [13]

> что такое ячейка памяти - на сколько мне подсказывает опыт - это тот термин которым неопытные преподаватели пытаются объяснить начинающим дарованиям, что такое переменная.

С высоты вашего опыта, подскажите как иначе назвать физ. ячейку памяти, кроме как "ячейка памяти" (memory cell)?


 
Marser ©   (2005-05-28 02:18) [17]


> Defunct ©   (28.05.05 2:08) [16]

:-)
Да ладно, ну не учил человек триггера, регистры и микросхемы ОЗУ :-)


 
Defunct ©   (2005-05-28 02:25) [18]

> чтоб присвоив указателю значение номера ячейки памяти той или иной перменной,вывести этот номер на экран.

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

MakedoneZ ©   (27.05.05 19:02) [15]
Не бери в голову. Просто используемая тобой терминология чуть чуть отличается от привычной на этом форуме. Помню меня долбили все кому не лень когда я употребил термин "процесс" вместо термина "поток".

Хотя здесь еще спорный вопрос, процесс (process) это все же однозначно последовательность команд, а вот "поток" из-за неоднозначности перевода (Thread/Stream) может быть применим еще и к данным (Data Stream).


 
Defunct ©   (2005-05-28 02:36) [19]

Marser ©   (28.05.05 02:18) [17]

Как же, он же строчкой выше сказал, что переменная может быть размещена в регистрах процессора, значит как минимум знает что такое регистры ;>


 
Marser ©   (2005-05-28 02:37) [20]


> а вот "поток" из-за неоднозначности перевода
> (Thread/Stream) может быть применим еще и к данным
> (Data Stream).

Потому и выделяют птоки данных и командные потоки.
Когда меня спрашивают, что я пишу, мне часто приходится рассказывать об этом с нуля :-)


 
Marser ©   (2005-05-28 02:39) [21]


>Defunct ©   (28.05.05 2:36) [19][Ответить]
>Marser ©   (28.05.05 02:18) [17]
>
> Как же, он же строчкой выше сказал, что переменная
> может быть размещена в регистрах процессора, значит
> как минимум знает что такое регистры ;>

:-)


 
Defunct ©   (2005-05-28 02:48) [22]

Marser ©   (28.05.05 02:37) [20]
> Потому и выделяют потоки данных и командные потоки.

О, есть еще и "Flow" тоже "поток".
(Data Flow) системы управляемые потоком данных.

Ну выделять-выделяют не спорю, но есть ведь масса литературы, где Thread переведен как "процесс". Сегодня видел ссылку на статью в одной из веток, где было написано:

"Процессы (потоки) ...." и далее все от TThread ;>


 
Marser ©   (2005-05-28 02:51) [23]

Вроде как это нить.


 
Defunct ©   (2005-05-28 02:56) [24]

Marser ©   (28.05.05 02:51) [23]

похоже да, но что-то "нить" мало употребляют  ;>
В общем, я к тому, что придераться к терминологии плохо, тем более когда нет на то оснований.


 
Defunct ©   (2005-05-28 03:26) [25]

Нашел ссылку о которой упомянул в [22]
http://www.realcoding.net/article/view/158

Прочитайте абзац "Зачем нужен TThread"


 
Marser ©   (2005-05-28 03:31) [26]

Спрячь эту статью от греха подальше.


 
Defunct ©   (2005-05-28 04:36) [27]

Marser ©   (28.05.05 03:31) [26]

Не я ее придумал, взято отсюда:
http://delphimaster.net/view/1-1117174185/

и ничего "противозаконного" в ней нет. И читается она вполне неплохо, если абстрагироваться от терминологии этого форума.
Процесс - последовательность действий, не противоречит Thread"у.


 
TUser ©   (2005-05-28 14:55) [28]

> и ничего "противозаконного" в ней нет.

Вот в такой программе тоже Конституция не нарушена. Однако, даже если тебе удастся ее скомпилировать в Delphi, то получишь ошибку, а если ее исправишь - то такое чудо никогда не закончит работать. Стоит ли учится на таких примерах?

progran Jew;

label ToGo;
var I: integer;
begin
 I:=-MaxInt;
:ToGo;
 writeln (inttostr(I));
 goto ToGo;
end.


 
Defunct ©   (2005-05-28 19:54) [29]

TUser ©   (28.05.05 14:55) [28]

А представляете талмуд собранный из таких статей? Много пользы будет от такого?

Synchronize(Method: TThreadMethod) - синхронизирует выполнение метода процесса, позволяя ему работать параллельно с другими процессами.

В этом есть какая-то маленькая доля правды, но не больше.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2005.06.14;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.56 MB
Время: 0.036 c
14-1116835859
vidiv
2005-05-23 12:10
2005.06.14
DOS атака - сильная вещь...


14-1116963145
AlterEgo of WondeRu
2005-05-24 23:32
2005.06.14
Толерантность


14-1116995512
sapsi
2005-05-25 08:31
2005.06.14
Звонки на сотовые с городских станут платными


1-1117529276
webpauk
2005-05-31 12:47
2005.06.14
работа с Pointer


1-1117001110
Kolan
2005-05-25 10:05
2005.06.14
Как экспортировать класс из dll.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский