Arama butonu
Bu konudaki kullanıcılar: 1 misafir
3
Cevap
979
Tıklama
0
Öne Çıkarma
Assembly Dilinde Basit Bir Örnek Yardımı Lazım
K
8 yıl (25 mesaj)
Onbaşı
Konu Sahibi

Assembly de kullanıcı tarafından girilen metni ters çevirip yazdıran bir örnek lazım. Bilen varsa yazabilir mi ? Teşekkürler..

DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.

Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.

Üye Ol Şimdi Değil



K
8 yıl (25 mesaj)
Onbaşı
Konu Sahibi

Saolun beyler.



K
8 yıl (699 mesaj)
Teğmen

http://lmgtfy.com/?q=Assembly+string+reverse



< Bu ileti mobil sürüm kullanılarak atıldı >

M
8 yıl (6459 mesaj)
Yarbay

Direkt kod yazmayacağım. Bu öğrenmeni engeller.
Birçok farlı yöntemi vardır. Ama genelde en yaygın 2 yol kullanılır.

1. Dizi yöntemi

Kaynak dizi segment adresini DS registerine hedef dizi segment adresini ES registerine yükle.
Kaynak ve hedef offset adreslerini SI ve DI registerlerine yükle.
Dizi boyunu CX registerine yükle. DI içeriğini CX kadar artır.
Loop döngüsü kur.
Döngü içinde SI ile oku DI ile yaz. SI değerini artırırken DI değerini azalt.

2. Yığıt (stack) yöntemi.

Kaynak segment ve offset adreseliri DS ve SI registerine yükle
Dizi boyunu CX registerine yükle
Loop döngüsü kur
SI ile okuyup yığıta Push et. SI değerini artır.
Hedef segment ve offset adreseliri DS ve SI registerine yükle
Dizi boyunu CX registerine yükle
Loop döngüsü kur
Yığıttan pop edip SI ile yaz. SI değerini artır.


32 bit için ESI,EDI,ECX gibi register isimleri kullanılır.
64 için R ile olur. (bunda segment kullanımı biraz farklıdır)





< Bu mesaj bu kişi tarafından değiştirildi melikulupinar -- 11 Haziran 2018; 18:57:3 >

DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.