-
1.
+15 -1C/C++ bilen panpalarım az önce sanal makine yazıyorum diye isim sormuştum. Şimdi ise çok daha büyük bir yardım gerekti...
CPU registerlarını tutan struct için daha düzgün bir şey yapma imkanı yok mu? Bu şekilde çok karışık duruyor:
--bağlantı--
http://hastebin.com/oxategiwaw.cpp
--bağlantı--
Bunun daha güzel ve daha düzgün versiyonunu yapmanın yolu var mı? Struct içinde birsürü union ve struct olması çok rahatsız edici duruyor.
Basitçe şunu struct haline getirmeye çalışıyorum yani:
readLow8Bit, readHigh8Bit, readLow16Bit şeklinde register'ı parçalara bölecek makrolar da yazabilirim ama bir structtan hepsine erişmek daha güzel görünüyor, bu yüzden structu düzeltebileceğim yöntemler önerirseniz daha güzel olur.
Şimdiden teşekkürler.
-
2.
+1up up up
bi mziaf a yada aworms a ulaşsana zumki onlar yapar belki -
3.
+32BU SÖZLÜK iÇiN FAZLASIN
-
4.
+2@3 hakli
-
5.
0up up up
-
6.
0up up up
-
7.
0up up up
-
8.
0@3 haklı up up up up
-
9.
0yazılımdan gram anlamam hayrına up
-
10.
0ne işe yarıyor bu
-
11.
+7Format at düzelir
-
12.
+5alt f4 yap
-
13.
+2Öncelikle Pnp 15'Lik Strucktan bir şeye ulaşamazsın disconnect atar C+ Sayesinde eax'dan ead'ye ulaşabilirsina ama 32 bit olacağı için makine 64 bit olması lazım şaka şaka gram fikrim yok hayrına UP ama
-
14.
0c bilgim o kadar ileri değil panpa, hesap makinesinden ibaret malesef. bilmiyorum yardımcı olur mu ama ben olsam assembly diliyle daha küçük byte lı ve direk işlemciye hitap eden birşeyler yazardım. ya da derleyicilerle c ye derlemeye çalışırdım.
-
15.
+2rahatsız eden sadece görseli ise, struct tanımlamak için bir macro kullanabilirsin:
1. define DEF_REGISTER( r32, r16, r8h, r8l ) union { union { struct { uint8_t r8l; uint8_t r8h; }; uint16_t r16; }; uint32_t r32; };
şeklinde. Sonra da bunu kullanarak registerlarını tanımlama işini daha kısa şekle çevirebilirsin:
typedef struct registers
{
DEF_REGISTER( eax, ax, ah, al )
DEF_REGISTER( ebx, bx, bh, bl )
...
..
}
şeklinde.. -
-
1.
0Panpa bu çözüm çok mantıklıymış fakat bir sorun daha var. Tüm registerlar bu formatta değil.
Genel amaçlı registerlar:
EAX | AX | AH | AL
EBX | BX | BH | BL
şeklinde giderken index ve pointer registerları:
EDI | DI
ESP | SP
şeklinde gidiyor. Bir de kontrol registerları var fakat onlar sorun değil yalnızca 32 bitlik halleri var doğrudan uint32_t cr0, cr1, ... şeklinde tanımlayabilirim onları. -
2.
0ne diyonuz amk
-
3.
0muhtemelen sen de tahmin etmişsindir, genel tipte olmayan registerlar için de ayrı macrolar tanımlayarak çözebilirsin.
kolay gelsin. -
-
1.
0Evet panpa ama isimler sorunlu işte. Birine gpr dedim kolay, diğerine ne diyeceğim? ipr (index veya pointer reg) aklımdaki isimlerden biri ama yine de ona uygun isim bulamadım
-
1.
diğerleri 1 -
1.
-
16.
+1 -3Console. Write("Ananı gibeyim");
-
-
1.
0Console q tab enter
-
2.
0amk anancisi cuk kadar kod yazmis onu da yanlis yazmis
-
1.
-
17.
0registerlardan anlarım da struct ne la ? union ne alaka aq?
-
18.
0((((((((:
-
19.
0yazılımın çöp hiç uğraşma
-
20.
0adı üstünde sanal amk sanal ilişki yaşamayın