Bilgisayar bilimcilerin "alçak seviyeli programlama dili" nden neyi kasdettikleri net değil. Ben anlatmak istediğimi sebepleriyle anlattım ve assembly programlama dillerinin arasında sayılamaz diyorum. Literatürde ne olarak geçtiği kimin umurunda. Herkesin bildiği programlama dili tanımına uymuyor, daha nesini tartışalım. Ama anlaşılan sizin konuyla ilgili kendi fikriniz yok. O onu dedi bu bunu dedi den başka birşey demiyorsunuz. Beni ve bu konuyu okuyanları ikna etmek istiyorsanız "assembly programlama dili" ile basit bir hesap makinası yazın. Yazamıyorsanız bu tartışma burada bitmiştir. |
http://forum.donanimhaber.com/m_78717772/tm.htm konumda a'dan z'ye assembly diye bir eğitim seti paylaştım güzel dökümanlar var işinize yararsa |
Kardes sen cekil aradan ![]() |
Tartışmaya pek girmek istemiyorum ama şu kısma takılınca yazayım dedim. :D "Assembly Programlama Dili" ile bir hesap makinesinin oluşturulamayacağını mı söylediniz yoksa zorluğundan vs mi bahsettiniz? Bilgisayar Mühendisliği 3.sınıf öğrencisiyim. @spartico arkadaşımızın da yazmış olduğu Kip.R.Irvine'nin Assembly Language for x86 Processors adlı kitabı üzerinden Sistem Programlama ve Assembly Dili dersini Üniversitede aldım. Basit tarzda bir hesap makinesi yapımı yanılmıyorsam 1. ya da 2.proje ödevimizde yer alan sorular içerisinde bir tanesiydi. Tam anımsamıyorum hangisindeydi. Ama ödevlerimiz içerisinde yer alan sorulardan biri buydu. Kısacası yapılmayacak bir şey değil, eğer onu kasdetmişseniz. Spartico arkadaşımız çok güzel yazmış Assembly diliyle alakalı bilgileri. Bu konuda daha fazla bilgilenmek isteyenler olursa İrvine'nin kitabını ben de tavsiye ederim. Buna ek olarak, Bilgisayar Organizasyonu, Bilgisayar Mimarisi gibi derslerde okutulan William Stallings'in kitabı da güzeldir. |
Bende ne zaman birisi atlayacak diye bekliyordum.![]() Kardeş ben o kodları androidde kullanmak istiyorum. Bildiğin assembly compiler varsa bi zahmet. |
![]() Senin daha öğreneceğin çok şey var. Biz o konuları çoktan geçtik. Ben sana androidde nasıl asm yazılır diye sormadım. O yazdığın (hani şu yukarıdaki kopyalayıp yapıştırdığın) asm kodlarını birebir nasıl androidde kullanırız diye sordum. Eğer ben java ile hesap makinası sorsaydım bana tek kod verirdin ve hiç değiştirmeden olduğu gibi heryerde çalışırdı. Hakeza c veya python kodları da olduğu gibi çalışırdı. Ama assembly sorduğum zaman işler nasıl değişti gördün mü? Ben sana asm dedim sen x86 asm verdin. Android deyince başka linke yönlendirdin. İşte bunun gibi birçok sebepten ötürü Assembly programlama dili değildir. Zaten konumuz da bu. Yoksa asm ile istediğin herşey yazılır ama bunun direkt binary kod yazmaktan hiçbir farkı yok. Çünkü Asm == makina kodu. |
Peki fpga "programlanıyor" derken aslında ona uygun semboller mi gönderiliyor o zaman? Yani programlama sayılmıyor mu? |
Fpga ile tecrübem yok ama onun olayının bambaşka birşey olduğunu biliyorum. Mikroişlemci yok, komut seti yok, fetch-decode yok, sıralı işlem yok. Programlama denilir tabi. Zaten fpga programming diye geçiyor her yerde. Yine de detayları dijital elektronik konusunda tecrübeli birine sormak lazım. Forumda vuraldesign diye bir arkadaş var, o bilir. |
http://www.altera.com/products/software/partners/opencl/opencl-board-partner-index.html Birde böyle bir güzellik var. Keşke geçim derdimiz falan olmasa, kafamız rahat olsa da böyle şeylerle uğraşabilsek. |
Bana göre de bu tartışma gereksizdir ama konuyu gören, yeni başlayacak olan, neyin ne olduğunu bilmeyen arkadaşlar assembly yi diğer dillerden biri zannedip yanlış bilgilenmesinler, prog. dili zannedip öğrenmeye çalışarak boşa zaman kaybetsinler diye çabalıyorum. Yoksa banane kim nasıl bilirse bilsin. Ama ben böyle çabaladıkça birileri gelip inatla milleti yanlış bilgilendirmekten adeta zevk alıyor. Mesela şu başlığa bak rezalet. Bu başlığı gören assembly yi örneğin C' ye bir alternatif zanneder. Halbu ki hiç alakası yok. Bunları birisi kaynak koddur, diğeri hedef kod. Bütün diller asm ye derlenir. Asm hedef kod. Programlama dillerinde seviye farkı nedir, kaynak kod - amaç kod nedir bilmeyen, derleyicilerin ne işe yaradığından bile habersiz olanlar burada ahkam kesiyor. Bende bunu anlamıyorum işte. Kendiniz ne derseniz deyin ama burada milleti yanıltıcı ifadelerden uzak durun diyerek kendi adıma konuyu kapatıyorum. |
saqeslanger dur ALLAH'ını seversen sen de zaten ortalık karışık ![]()
Yine mi koydun şu gifi ![]() |
Öncelikle herkese merhaba, Asmb ın proramlama dili olup olmadığını anlamak için olayın en başından bakmanızı tavsiye ederim. İlk yapılan programlar hangi dille yazılmıştır. Bunu araştırırken fark edeceksiniz ki (kaynak vermeme gerek yok, cevabı merak eden araştırır) asmb dir, bu dille program yazmak zor olduğundan üzerine yapı çıkılarak basic, c gibi diller türemiştir. Zaten c# ın ve bir çok dilin temelinde de c vardır. Kaçırılmaması gereken bir detay daha var, diller kendi aralarında da ayrılırlar. Örneğin son nesil diller object-orianted (nesne tabanlı) olarak nitelendirilirler. Bu dillere bu özelliği veren asmb ın varlığıdır. Extra bir detay pic entegreleri bilirsiniz, bu enteğrelerin içerisine program yazmak istediğinizde çoğunlukla asmb kullanılır. Şimdi bana pic lerin içerisine program yazılmıyor demeyin, dediğim gibi programlama dilleri ile ilgili ahkam kesmeden önce neden bahsettiğinizi iyi bilmelisiniz. Asemb bir programlama dilidir, en ilkeli ama en etkilisi, çünkü donanım le birinci elden iletişim kurar. Diğer dillerin hepsi belirli mimarilerin üzerine kurulmuştur ki büyük ihtimalle mimarinin temelinde asmb vardır. |
zaten tüm C kodları derleyicide assemblye çevirelerek çalıştırılır yani yazdıgın tüm C programlarının gccye gireceğin parametreler ile assembly çıktısını alabilirsin , ama sende bunları düşünecek ne bilgi ne ingilizce var tabi |
Vay anasını bu müthiş bilgiyi bizimle paylaştığın için teşekkürler üstat. 40 yıl düşünsem gcc den asm çıktısı alınacağı aklıma gelmezdi. Değerli bilgilerini esirgeme forumdan, aydınlat bizi. ![]() |
Konuyu tekrar hortlatıyorum ama araştıranlar yanlış öğrenmesinler, dillerin ademi'dir assembly: < Resime gitmek için tıklayın > |
abi bunları biliyon o zaman da neden bildiklerini herkes için anlatmıyorsun da zaten konu hakkında bilgisini kanıtlamış bi adama karşı ukalalık yapıyorsun? bu forum senin yerin değil bence. forumda çok etkin olmasam da her zaman girip aradığım şeyleri bulabiliyorum ama senin yazdığın mesajların hepsi gereksiz, ben ne anlamam gerektiğini anladım. |
Konuyu baştan sona okudum da. Bir insan bir şeyi bilmeyebilir. Herkes her şeyi bilecek diye bir şey yok. İlgili konuda bilgili kişi veya kişiler, kaynak da göstererek açıklama yapmış olduğu halde hâlâ diretiyor. |
Bilgisiz veya az bilgili olmak cehalet degildir. Ama sacma sapan seylerle ugrasip takilip kalmak ulkem insaninin en asagilik duygusu ve kompleksidir. Ya hu! Sen bilgisayar muhendisi olsan ne olur? Copcu olsan ne olur? Assembly bir programlama dili olsa ne olur? Olmasa ne olur? Basligi acan adam senin kadar bilgili olsa ne olur? Olmasa ne olur? Genellikle TURK BILGISAYAR muhendisleri mesleklerini ve detaylarini bilmezler. Pascal programlama ile bilgisayar muhendisligi hayatina baslayan ve php ile bitiren adamdan degil donanim, yazilim duzeyinde bile muhendis olamaz. Olmuyor. olmayacak. Cunku her seyi bilen insanlara hic bir seyi ogretemezsiniz. Assembly bir programlama dilidir. Logic programlamadan (0101110111000) sikilinca, genellikle assembly (mnemonic) programlama asamasina gelinir. Bu asamaya gelmis kisilerin ellerinde IDE, Compiler, OOP gibi kolayliklar yoktur. GWBASIC'i hatirlayanlar varsa anlatmak istedigim sey Visual Basic ile GWBASIC arasindaki fark kadar buyuktur. Ancak, biliyor bile olsaniz yeniden ogrenmekten korkmayin. Bu sizi cahil yapmaz. Bilakis daha bilgili yapar. referans kaynak
Detaylari ogrendikten sonra
Ulke'de bir seyi azcik becerince kendisini lord of the rings gibi hissetmeleri gunumuz bilgisayar muhendislerinin APK yazma pesinde olmasinin en buyuk sebepleri arasindadir. Muhendis oldun. Sonra ne oldun? Yazik, ne kadar bos bilgiler tartisilmis. Sanki hepiniz kendi CPU'nuzu yaptiniz, kendi FGPA'nizi gelistirdiniz. Peh.. |
İntel bir işlemcisine fpga koyuyor hatta amd de zen ile bunu yapacak ama biz programlayabilir miyiz acaba. Atıyorum OpenCL api destekli olursa yağ gibi akar oyunlar simülasyonlar. Böylece pci-e destekli kartları satarken donumuza kadar almazlar veya 3Tflops gpu fiyatına usb çıkışlı development-boarda talim edilmez. |
Sizin "programlama dili" tanımınız , aslında bir programlama dili türü tanımıdır. Şimdi siz yine , on yıllardır kabul edilmiş standart programlama dili tanımlarının ve konseptlerinin aslında yanlış olduğunu , sizin bildiğinizin daha doğru olduğunu iddia edeceksiniz. Yine eyvallah.
Sizin o "bir kaç kitap" dediğiniz kitaplar , bu alanda etkinliğini kanıtlamış , bazısı 10 baskı yapmış kitaplar. Öyle , "Kim Korkar Assembly'den" , "Mustafa Bıdıbıdıyla 12 saatte Assembly" gibi kitaplara pek benzemezler. Yazarları da, çarşıda dükkanı olan adamlar değil. Bu teknolojilerin geliştirilmesinde bizzat rol almış kişiler. Dolayısıyla evet , "Bir kaç kitaptaki tanıma ve bilgisayar tarihinin başından beri süregelen akademik eser birikimine" inanacaksınız. Tabi kibirinize yedirebilirseniz.
Tuğrul Bey , High Level Assembler'lar ile ilgili en güzel bilgi , Randall Hyde'ın The Art of Assembly Programming kitabında mevcut , çünkü kitap doğrudan HLA anlatıyor. Onlar doğrudan bir programlama dilinden çok , bir lehçe oluyor. Söz gelimi , LISP'in pek çok lehçesi var. Aynı şekilde Haskell'in , Scheme'nin de pek çok lehçesi var.
Neyse daha fazla tartışmayacağım. Nasıl olsa ben buraya karşınıza Nathaniel Rochester'ı , Stephen P. Morse'u filan getirsem , yüzyüze konuştursam , yine fayda etmeyecek.
"Biz Assembly'i iyi biliriz... Programlama dili nedir bir kaç bilgisayar bilimciden öğrenecek değiliz!"
Bu mesaja 1 cevap geldi. Cevapları Gizle