Kategori Arşivi: ‘Assembly’

Visual Studio 2015 ile Win64 Assembly Programlama


Esen!
Arkadaşlar, RadASM ile x86 Assembly için SCTZine Assembly sayfamızı ziyaret edebilirsiniz.
Bugün ise ilk defa 64 bitlik assembly programlama yapacağız. 64 bit programlama için birkaç değişik yaklaşım var. Bu yazıda C++ ile beraber assembly nasıl kodlanır ona bakacağız. Saf x64 Assembly derslerim de olacak. Hepsi zamanla.

Çalışma Ortamı (Gereksinimler):
Microsoft Windows 10
Microsoft Visual Studio 2015
Microsoft SDK
Not: Bunlar “minimum” gereksinimler değil. Windows 8.1 ve Visual Studio 10 ile de bu çalışmayı yapabilirsiniz.
devamını okuyun »

Kategori Assembly
16.06.2016
3359 Okunma

RadASM 2.2.2.1 Türkçe

radasm-belgiEsen!
RadASM’nin yazarı Ketil Olsen aslında RadASM v3’ü duyurmuştu. Ancak hemen sonra RadASM’yi geliştirmeyi durdurdu. RadASM açık kaynak kodlu bir assembly geliştirme ortamı ve kaynak kodlarını Sourceforge‘de bulabileceğiniz gibi MASM32 forumlarında da küçük bir topluluk RadASM üzerinde çalışmaya devam ediyor.

Ben halen v2 sürümünü kullanıyorum çünkü bu sürümü Türkçeleştirdim ve v3 sürümünün dil desteği yok. Ayrıca v3 sürümü çok fazla bir yenilik getirmediği gibi v2 sürümünün proje dosyaları olan .rap uzantılı dosyaları da tanımıyor.

Aşağıda bağlantısını verdiğim paketi devamını okuyun »

Kategori Araçlar, Assembly
17.05.2016
3591 Okunma

Pencere Animasyonları – AnimateWindow fonksiyonu ve RadioButton Kullanımı

Merhabalar; AnimateWindow fonksiyonu; pencerenizi açarken ya da kapatırken bazı görsel efektler sunmanıza yarar. Bunlar dönme, kayma, çökme/açılma ve yavaşça görünür olma şeklindedir. Bunların bazılarını birleştirebilirsiniz de aynı zamanda.

Yazım Şekli:
AnimateWindow,hWnd,dwTime,dwFlags
Örnek olarak:
invoke AnimateWindow,hWin,600,AW_HIDE or AW_SLIDE or AW_HOR_POSITIVE

Parametreler:
hWnd(dword): Oynatacağımız pencerenin handle değeri burada oluyor
dwTime(dword): Milisaniye olarak animasyonun oynayacağı süreyi belirtir.
dwFlags(dword):Animasyonun çeşidi. Bir seferde birden fazla çeşit kullanabilirsiniz. Bunu yapmak için bayrakların arasına “OR” mantıksal operatörünü koymanız yeterli. Pencere açılırken “AW_ACTIVATE” eğer kapanacaksa “AW_HIDE” kullanılır.

For English users please visit: MASM32 Forum Related Topic devamını okuyun »

Kategori Assembly, Belgeler
05.11.2012
3572 Okunma

1000000 Digit Pi Number Generator

Selamlar;

Pi sayısını hepimiz biliriz: 3,14 .Bir dairenin çevresinin çapına oranıdır. Ama bu sayı bu kadar değil. Bazıinsanlar Pi sayısının sonsuza kadar uzadığını söylüyorlar. Bazı matematikçiler de daha sonsuza kadar ulaşamadıklarını bu yüzden bu sayının bu kadar uzadığını ya da bir örüntü(düzen) içinde kendisini tekrar edip etmediğini bilemeyeceklerini söylüyor.

Pi sayısının 65 hanesi:
3,1415926535897932384626433832795
028841971693993751058209749445923

Bugün dünyada 10 trilyon basamağa kadar ulaşılmış pi sayısında. Bu rakama ulaşabilmek için sadece yazılım/algoritma değil aynı zamanda donanımda gerekir. Benim aşağıda verdiğim kodları 1000000 hane için derleyin, göreceksiniz ki bazılarınızın bilgisayarında çalışmayacak. Benim makinemde 267 saniyede 1milyon haneye ulaştım. Sizde deneyin.

Ayrıca NumberWorld isminde bir site var burada 10trilyon haneye ulaşabilirsiniz. bazı insanlar bu tarz konuları yarış haline getirmişler, laboratuvar kurmuşlar. Bağlantıdaki resimleri inceleyin adam nasıl makinede çalışıyor!

Ekteki dosya Gauss–Legendre algorithm ve GMP (gmp-dynamic-vc-4.1.2 library) kütüphanelerinin birleşiminden oluşturulmuş. Dosyayı derleyebilmek için MASM11 ‘in kurulu olması ve GMP.DLL ‘nin dosya ile aynı klasörde olması gerekmektedir.

[dm]123[/dm]

Kategori Assembly, Belgeler
09.09.2012
4908 Okunma

Rastgele Ondalıklı Sayı Üreteci

Merhabalar, önceki bir yazımda sizlerle rastgele tamsayı üreten bir araç hazırlayıp kaynak kodlarıyla eklemiştim. BURADAN inceleyebilirsiniz. 2 gün önce MASM Forumlarında rastgele reel sayı üretmek ile ilgili bir konu açılmıştı. Bende bizde de böyle bir örnek olması için kendim bir rastgele ondalıklı sayı üreteci hazırladım. Ayrıca oradaki kaynak kodları da RadASM projesine çevirip düzenledim. (Daha sonra ekleyeceğim)

Rastgele Ondalıklı Sayı Üreteci(Random Real Number Generator) mükemmel bir üreteç değil ama size bir fikir verecek. Ben fonksiyonumda basitçe önce bir rastgele tamsayı ürettim. Sonra ise bu sayıyı pi sayısıyla işlemlere soktum. İsterseniz e sabitinide kullanabilirsiniz ya da kendi sabitinizi kendiniz oluşturabilirsiniz.

Dediğim gibi temel  mantığı anladıktan sonra gerisi sizin hayal gücünüze kalmış. Assembly dilinde ondalıklı sayılar ile çalışacaksanız FPU komutlarını bilmeniz gerekiyor. Buradan ilgili Ağ Sayfasına gidiniz.

Kaynak kodlar aşağıda, devamını okuyun »

05.08.2012
5020 Okunma

[SCT]ModCAE String Crypter

Selamlar,

Daha önceden sizlere Sezar(Caesar) Şifrelerinden ROT13 Converter isimli bir uygulamayı hazırlayıp assembly kodlarını yayınlamıştım. Sezar şifreleme en yalın haliyle alfabedeki harflerin birebir bir başka karakter ile yerdeğiştirerek yaratıldığı bir şifreleme yöntemiydi. Sezar şifreleme yönteminde bir karaktere karşılık yine bir karakter denk gelir; ikinci, üçüncü alternatifler yoktur.

Şimdi ise istek üzerine hazırladığım modifiye edilmiş ve daha çok karakterin şifrelenmesine izin veren bir Sezar şifreleme programcığı hazırlamıştım. Burada da, alfabedeki harfler sayılar ve bazı özel karakterleri de ekleyerek bir uygulama yazmıştım. Umarım kaynak kodları işinize yarar. Kaynak kodları ve ayrıntıları dosyanın içindedir.

[dm]112[/dm]

For English users: devamını okuyun »

Kategori Assembly, Belgeler, SCT
04.08.2012
2933 Okunma

Fibonacci Numbers Generator

Merhabalar

Fibonacci sayıları 0 dan başlayarak doğal sayıların kendisinden bir önceki sayı ile toplanmasıyla oluşan sayı dizisidir. F = 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55,…

Assembly kullanarak fibonacci sayılarını üreten bir program hazırlamaya çalıştım.

[dm]105[/dm]

devamını okuyun »

29.07.2012
3806 Okunma

RadASM Icon Pack for v2.0 and v3.0

Uzun bir süre önce MASM forumlarında cntrump nickli kullanıcı RadASM v3.0 için ikon paketi çıkartmıştı. Yalnız eski MASM forumunda bulunan bu dosyalar yeni MASM forumlarında yok. Ayrıca o ikonları ben v2.0 için de düzenledim buradan hem RadASM 3.0 için hemde RadASM v2.0 için ikon paketini indirebilirsiniz.

English: Long time ago cntrump had released icons and png sources for RadASM 3 on the old MASM forums. I have edited them for RadASM 2. You can both download icons&pngs here. Regards.

[dm]109[/dm]

[dm]110[/dm]

Kategori Assembly, Belgeler
29.07.2012
4404 Okunma

Mors Kodu Çevirici

Merhabalar, zamanında CYDONiA tarafından yazılan küçük bir text2morscode programı vardı.  Zugo bu assembly kodunu biraz daha geliştirp bir de ses eklemiş. Gerçek bir Mors Kodu Çevirici olmuş. Kendisinden rica ettim sağ olsun siteye koymam izin verdi. Dosya kaynak kodlarıyla beraber aşağıdadır.

[dm]104[/dm]

Kategori Assembly
08.05.2012
4991 Okunma

HEX.BIN Converter v1.0

Örnek programımız 32bitlik işlem yapmaktadır. Onaltılık ve ikilik tabandaki sayıları birbirine döndürebilir. Assembly programlama dilinde en önemli konulardan biri de sayı sistemleri ve bunlar arası geçiştir. Bu konuya açıkçası ben biraz takmış durumdayım 8) Ama eklediğim bu iki örnek gerçekten işinize yarayacak. Sadece tabanlar arası çevrim değil aynı zamanda editlerin davranışlarının “SetWindowLong” APIsi ile değiştirlmesi ve kullanılan her editin EN_CHANGE haricinde EN_UPDATE kullanılarak nasıl birbirini etkilediğini de görebileceksiniz. Uzun sözün kısası ayrıntılı bilgi kaynak kodların içinde. Kolay gelsin.

[dm]98[/dm]

Kategori Assembly
12.11.2010
4322 Okunma