«assembly» etiketlenmiş sorular

Montaj dili (asm) programlama soruları. Ayrıca, kullandığınız işlemci ve / veya talimat setinin yanı sıra montajcı ile ETİKET ETMEYİNİZDEN EMİN OLUN. UYARI: .NET derlemeleri için bunun yerine [.net-assembly] etiketini kullanın. Java ASM için, [java-bytecode-asm] etiketini kullanın.

3
GDB ile yığın içeriğini nasıl görebilirim?
GDB'de yeniyim, bu yüzden bazı sorularım var: Yığının içeriğine nasıl bakabilirim? Örnek: register içeriğini görmek için yazıyorum info registers. Yığın için ne olmalı? İçeriğini nasıl görebilirim $0x4(%esp)? Ben yazarken print /d $0x4(%esp), GDB bir hata verir. Platform: Linux ve GDB
106 c  assembly  gdb 

10
X86 neden çirkin? Neden diğerlerine kıyasla daha aşağı kabul ediliyor? [kapalı]
Şu anda olduğu gibi, bu soru Soru-Cevap formatımız için uygun değil. Cevapların gerçekler, referanslar veya uzmanlıkla desteklenmesini bekliyoruz, ancak bu soru büyük olasılıkla münazara, argümanlar, anketler veya uzun tartışmalar gerektirecektir. Bu sorunun iyileştirilebileceğini ve muhtemelen yeniden açılabileceğini düşünüyorsanız, rehberlik için yardım merkezini ziyaret edin . 8 yıl önce kapalı . …

5
"FS" / "GS" yazmacının amacı nedir?
Bu nedenle, aşağıdaki kayıtların ve kullanımlarının ne olması gerektiğini biliyorum: CS = Kod Segmenti (IP için kullanılır) DS = Veri Segmenti (MOV için kullanılır) ES = Hedef Segment (MOVS vb. İçin kullanılır) SS = Yığın Segmenti (SP için kullanılır) Ancak aşağıdaki yazmaçların ne için kullanılması amaçlanmıştır? FS = "Dosya Segmenti"? …

7
Çağrı yığını tam olarak nasıl çalışır?
Programlama dillerinin düşük seviyeli işlemlerinin nasıl çalıştığını ve özellikle OS / CPU ile nasıl etkileşime girdiklerini daha derinlemesine anlamaya çalışıyorum. Muhtemelen burada Stack Overflow'da her yığın / yığınla ilgili başlıktaki her cevabı okudum ve hepsi harika. Ancak henüz tam olarak anlamadığım bir şey var. Bu işlevi, geçerli Rust kodu olma …


23
Öğrenme derlemesi [kapalı]
Kapalı . Bu soru fikir temelli . Şu anda cevapları kabul etmiyor. Bu soruyu geliştirmek mi istiyorsunuz? Bu yazıyı düzenleyerek gerçekler ve alıntılarla cevaplanabilmesi için soruyu güncelleyin . 3 yıl önce kapalı . Bu soruyu geliştirin Assembly dilini öğrenmeye karar verdim. Bunu yapmanın ana nedeni, demonte edilmiş kodu anlayabilmek ve …
102 assembly 


14
Bir kelime ve bayt arasındaki fark nedir?
Biraz araştırma yaptım. Bir bayt 8 bittir ve bir kelime hafızada adreslenebilen en küçük birimdir. Bir kelimenin tam uzunluğu değişir. Anlamadığım şey, bir bayta sahip olmanın anlamı nedir? Neden 8 bit demiyorsunuz? Bu soruyu bir profesyonele sordum ve o günlerde çoğu makinenin bayt adresli olduğunu söyledi, ancak bu ne anlama …

7
Assembly dilini öğrenmeye değer mi? [kapalı]
Kapalı. Bu soru konu dışı . Şu anda cevapları kabul etmiyor. Bu soruyu geliştirmek mi istiyorsunuz? Sorunuzu güncelleyin o yüzden -konu üzerinde yığın taşması için. 9 yıl önce kapalı . Bu soruyu geliştirin ASM öğrenmeye hala değer mi? Biraz biliyorum ama gerçekten kullanmadım ya da doğru şekilde öğrenmedim çünkü assembler'da …

2
Gdb'de belirli bir adreste montaj talimatı nasıl kesilir?
0x0000000000400448 <main+0>: push %rbp 0x0000000000400449 <main+1>: mov %rsp,%rbp 0x000000000040044c <main+4>: mov $0x6,%eax 0x0000000000400451 <main+9>: leaveq 0x0000000000400452 <main+10>: retq Denedim: breaki 0x0000000000400448 ama öyle görünüyor ki böyle bir komut yok. Gdb'nin böyle bir özelliği var mı?
97 assembly  gdb 

5
EBP çerçeve işaretçi kaydının amacı nedir?
Derleme dilinde yeni başlayan biriyim ve derleyiciler tarafından yayılan x86 kodunun, EBPkaydı başka bir şey için kullanabildiğinde yayın / optimize modda bile çerçeve işaretçisini genellikle etrafta tuttuğunu fark ettim . Çerçeve işaretçisinin kodun hata ayıklamasını neden kolaylaştırabileceğini ve alloca()bir işlev içinde çağrıldığında gerekli olabileceğini anlıyorum . Ancak, x86'da çok az …

8
Hangisi daha hızlı: if (bool) veya if (int)?
Hangi değeri kullanmak daha iyidir? Boolean doğru mu, Tamsayı 1 mi? Yukarıdaki başlık bana bazı deneyler yaptırdı boolve intiçinde ifkoşulu. Ben de meraktan bu programı yazdım: int f(int i) { if ( i ) return 99; //if(int) else return -99; } int g(bool b) { if ( b ) return …
95 c++  assembly  int  boolean 

2
Derleme dosyaları projeye dahil edildiğinde mmap'den beklenmeyen yürütme izni
Bununla kafamı duvara vuruyorum. Projemde mmap, mapping ( /proc/self/maps) ile bellek ayırdığımda , yalnızca okunabilir bellek istememe rağmen okunabilir ve yürütülebilir bir bölge olduğunu gösteriyor . Strace (iyi görünüyor) ve diğer hata ayıklama içine baktıktan sonra, bu garip sorunu önlemek gibi görünüyor tek şey tespit edebildi: derleme dosyaları projeden kaldırma …
94 c  linux  assembly  mmap 



Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.