Anonymní profil Jirka – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil Jirka – Programujte.comAnonymní profil Jirka – Programujte.com

 

Příspěvky odeslané z IP adresy 195.113.228.–

Jirka
C / C++ › Statická paměť- jak se to ad…
2. 11. 2008   #88912

No ale právě že v .EXE vidím to samé co ukazuje Disassembly okno v MS Visual C++, tedy mov 004238D4, 0x1111 například.
Ale to stránkování je asi to, co musím nastudovat. Měl jsem dojem, že se to dělá přávě segment registry jako u 8086, ale zřejmě jde o něco jiného ... Nemáš tip na nějaký tutorial, nebo alespoň vhodná klíčová slova do googlu? Chci mít představu, jak se ta adresa kterou vidím v disassembleru přepočítá na skutečnou adresu v RAM.

Jirka
C / C++ › Statická paměť- jak se to ad…
31. 10. 2008   #88840

Můžete mi prosím někdo vysvětlit, jak se adresuje "Statická paměť" a "statické proměnné" ? Když se podívám jak se to překládá, tak vidím úplně natvrdo instrukci mov adresa <- hodnota:
staticka=0x1111;
00401047 C7 05 D4 38 42 00 11 mov dword ptr [staticka (004238d4)],1111h
Předpokládám, že se ta adresa 004238d4 dá dohromady s nějakým registrem, protože kompilátor nemůže v době překladu
určit, že hodnota bude ležet na konkrétní adrese, ale nějak se mi nedaří zjistit, jak to vlastně funguje. Všude čtu, že se adresa určí "in compile time". Takhle jsem mohl určit adresu když jsem psal stroják pro Z80, ale pod současnými operačními systémy těžko. Takže mi něco podstatného pořád uniká.

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý