Acaba Register Seviyesinde Kod Yazmak Hala Mantıklı Mı?

Başlatan E-x8, 18 Temmuz 2017, 21:19:16

muhittin_kaplan

O asm, yada lowlevel yazan firmalar denilen firmalar bence c bile yazmiyor c++ la kodluyorlar.

muhittin_kaplan


RaMu

İşin mutfağını bilmek iyidir,
zararıda yoktur, faydası çok olur,
gerekirse kullanırsın,
o zaman mantıklı olur.


Aslında kod yazmak mantıklımı ki
neyle yazdığımız mantıklı olsun,
Çinde aynısı daha ucuza var :)
Amerika da keşfedilmiş zaten.
Sorularınıza hızlı cevap alın: http://www.picproje.org/index.php/topic,57135.0.html

mert3162

Alıntı yapılan: RaMu - 20 Temmuz 2017, 02:44:51
İşin mutfağını bilmek iyidir,
zararıda yoktur, faydası çok olur,
gerekirse kullanırsın,
o zaman mantıklı olur.


Aslında kod yazmak mantıklımı ki
neyle yazdığımız mantıklı olsun,
Çinde aynısı daha ucuza var :)
Amerika da keşfedilmiş zaten.


hocam 4lük yazmışsınız ilk anda şiir gibi okudum :)
|^^^^^^^^^^^^\ ||\
|__PICPROJE.ORG __
||'""|""\___
| _____________ l | |__|__|___| )
(@!)!(@)"""""**|(@) (@)****|(@)---------

 Üstadlarım nonstradam & Logan

Okan AKÇA

Register seviyesi derken hi-level derleyici de register ler tanımlı tek tek, buda aslında register Seviyesinde kod yazmamiz anlamina geliyor. 3 sınıf derleyici üreticileri hariç bu işe sicak bakmasada artık gördüğüz gibi kolaylık sağlayan programlar gün gün artarak devam edecektir.

XX_CİHAN_XX

Yaklaşık 7 sene asm ile kod yazdım. Sonra C ye bir geçtim, geçiş o geçiş :) Her halde C'de de bir 6-7 sene devirmişimdir. Bu süre zarfında bir elin parmağını geçmeyecek kadar az projede asm kullanma ihtiyacı duydum. Asm bilmek elbette çok güzel ama artık MCU'lar, kaynak ve kütüphaneler eskisi gibi sınırlı değil. Benim görüşüm C yi ne kadar iyi öğrenirsen senin için kardır. C nin yanına ikinci bir dil öğrenmek istiyorsan daha yüksek seviyeli dillere yönel ama bunu C de iyi bir seviyeye geldikten sonra yap.
Yirmi yaşındaki bir insan, dünyayı değiştirmek ister . Yetmiş yaşına gelince , yine dünyayı değiştirmek ister, ama yapamayacağını bilir.

Epsilon

Tartışılan konuda mantıksız olarak görülen neresidir çokda anlamış değilim.

Programlamanın püf noktalarına ait olan " belki en çok 100 satır kodu her MCU için farklı  kod yazmak  size ağırmı  geliyor yoksa gelmemeli mi ?" sorunun özeti bu sanırım.

Bence bunu tartışmak yerine MCU yu seçtiğimde hangi interruptları kullanacaksam hangi özellikleri istiyorsam /aktif edeceksem texti  bana otomatik oluşturan programı nasıl yaparım demek araştırmak daha  verimli olurdu.
Aslında excel le bile çok kolayca yapılabilir  seç  kopyala olması gereken yere yapıştır.

RaMu

@mert3162
teşekkür ederim hocam,
yazı dilinin optimizasyonlusuda şiir değil mi zaten.
Sorularınıza hızlı cevap alın: http://www.picproje.org/index.php/topic,57135.0.html

CLR

Arada şöyle bir fark var, hazır kütüphaneleri herkes kullananabilir bu durumda iyi bilenle bilmeyen kolayca ayırt edilemez. Register seviyesinde kod yazamayanlar, sürekli hazır kütüphane arama arayışı içine girer. Bazı özel durumlarda tıkanabilirler ayrıca hazır kod kullandıklarından, alışırlar ve  tüketici mühendis/tekniker durumuna düşerler. Mesela arm cortex m3'lerde bit reverse ve byte reverse gibi asm komutları var, eğer bu komutlar C'ye çıkarılmasaydı, çoğu embedded yazılımcı, 8/16/32 biti ters çevirmesi gerekse tonlarca işlem yapacaktı.  Veya bazı registerlerin bazı bitleri C'ye çıkarılmamış olabilir bu durumda işlemcinin o özelliğini bilmiyor olacaksınız.

Bu bilgiler ancak asm komutlarını okuyabilmek ve registerleri iyi tanımakla öğrenilebilir.


Knowledge and Experience are Power

kimlenbu

Assembly ile veya c'de register'lara direkt müdahale ederek kod yazmayı bilmek önemli, arka planda neler oluyor bilirsin. Yalnız projelerde kullandığım çok çok nadirdir. Enerjimi ve zamanımı "lan hangi registerin hangi bitiydi" diye harcamak yerine yapılacak işe ayırmak daha verimli oluyor. Bunun sakıncası henüz oturmamış kütüphanelerde buglar yüzünden günlerini harcayabilirsin.



Ayrıca hazır kütüphane kullanımına da karşı değilim, tekerleği yeniden icat etmeye gerek yok. Zamanla işine yarayacak şekilde modifiye ediyorsun zaten.

magic_gun

#25
sadece sahsi fikrim ,,( yıllarca saf ASM yazan biri olarak )
hala asm yi kullanırım ama nerede ? tabiki programın kritik olan kısımlarında gerisi ise hangi high level dil işimi görüyorsa

herhangi bir High level derleyiciye karsı mıyım hayır --işimi kolaylastırıyor
ASM  ye karsı mıyım hayır işimi dahada kolaylastırıyor
hayal etmeden basaramazsınız www.atariturkiye.com