Udemy

Platform

Türkçe

Language

Programming Languages

Category

Emu8086 ile Assembly Programlama Dili : Gerçek Programlama

Assembly programlama dilini Intel8086 komut kümesi ile öğrenerek güncel programlama dillerinin özünü öğreneceksiniz.

4.69 (116 reviews)

Emu8086 ile Assembly Programlama Dili : Gerçek Programlama

Students

19.5 hours

Content

Mar 2021

Last Update
Regular Price

SKILLSHARE
SkillShare
Unlimited access to 30 000 Premium SkillShare courses
30-DAY FREE TRIAL

What you will learn

İşlemcinin Nasıl Çalıştığını

Assembly ve Yüksek Seviyeli Programlama Dilleri Arasındaki Farkları

Intel8086 Komut Kümesini

Emu8086 Kurulum ve Kullanımını

Yüksek Seviyeli Programlama Dillerinde Veri Yapılarının Nasıl Oluşturulduğunu

Kesmeleri ve Dosya İşlemlerini

Temel I/O İşlemlerini ve Donanım Kesmelerini

Mikroişlemci ve Mikrodenetleyici Arasındaki Farkları

Bilgisayar Mimarilerini (Harvard ve Von Neuman)

İşlemci Mimarilerini (x86-x64)

Flowgortihm ile Algoritma Oluşturmanın Temellerini

Sayı Sistemlerini (Decimal, Binary, Octal, Hexadecimal)

Prosedürleri ve Makroları Kullanmayı


Description

İndirimden yararlanmak ister misin?
Kupon Kodu: TEMMUZ3-2021


Üniversitelerde mikroişlemci, sistem programlama gibi isimler ile okutulan derslerin en temel içeriği olan assembly dilini Intel 8086 komut kümesi öğrenmek istiyorsanız bu kurs tam size göre demektir. Türkiye'de dijital kaynak olarak en düzenli ve en açıklayıcı kurs olmasını hedeflediğim bu kurs için kullanmış olduğum kaynakları gizlemeden sizlerle paylaşıyor olacağım.

Bu kurs ile orta düzeyde bir assembly programlama bilgisine sahip olacaksınız. Unutulmamalıdır ki assembly aslında işlemcilerin komut kümelerine bağlı bir dildir. Günümüzdeki bilgisayarlar Intel tarafından geliştirilen X86 komut kümesi mimarisini kullanmaktadırlar. Bende sizlere 16 bitlik bir mikroişlemci olan Intel 8086 komut kümesi ile assembly programlama nasıl yapılır bunu anlatıyor olacağım. Assembly günümüzde yaygın olarak kişiler tarafından bilinmese de aslında bütün programlama dillerinin en temelidir.

Eğer programlama dillerini çok daha rahat kavramak ve altında hangi teknolojilerin yattığını öğrenmek istiyorsanız bu kurs ile sorularınıza bir bir cevap alıyor olacaksınız. Ancak şunu da belirtmeliyim ki bu ve bunun gibi kurslar sizlere sadece başlangıç için bir tetikleyici unsur olarak görev alır bundan sonrası sizlerin araştırma ve uygulama azmine kalacaktır. Diğer programlama dillerine nazaran assembly çok daha zordur. Çünkü programlama yaparken manevra kabiliyetiniz oldukça kısıtlıdır. Ancak diğer programlama dillerinin oluşturmuş olduğu kalıpları yıkmak içinde oldukça önemlidir.

Assembly dili ile makine seviyesine indirgenmesi gereken sürücü yazılımları üretilebilmektedir. Ayrıca crack olarak adlandırdığımız yazılımların normal akışlarından çıkmasını ve yönlendirilmesini sağlayan araçları yine assembly bilgisi ile yazabilmektesiniz. Ancak bu kursta böyle bir bilgi verilmemektedir. Kursun tek amacı var o da assembly dilini Intel 8086 komut kümesi ile orta düzeyde uygulamalarla öğretmektir. İngilizce bir çok kaynak bulabileceğiniz bu dil için Türkiye'deki ender Türkçe kaynaklardan biri ile tanışmış olacaksınız.

Bölümlerdeki hedeflerimiz neler olacak?

  • Bölüm 1: Kurstan etkin olarak faydalanabilmeniz için gerekli olan tüm temel bilgiyi edineceksiniz.

  • Bölüm 2: Programlama hakkında hiç bilginiz yoksa temel düzeyde algoritma ve programlama bilgisine sahip olacaksınız.

  • Bölüm 3: Sayı sistemleri hakkında detaylı bilgiye sahip olacaksınız.

  • Bölüm 4: Intel 8086 mikroişlemcisini tanıyacak ve Emu8086 programında nasıl simüle edildiğini öğreneceksiniz.

  • Bölüm 5: RAM üzerinde verilerin nasıl saklandığını ve saklanan verilere nasıl erişildiğini en ince ayrıntısına kadar özümseyeceksiniz.

  • Bölüm 6: Intel 8086 komut kümesine alışmak ve yavaş yavaş alıştırmalar yapmak için gerekli olan temel komutları öğreneceksiniz.

  • Bölüm 7: Stack (Yığın) olarak adlandırılan veri yapısının nasıl işlediğini net ifadelerle kavrayacaksınız.

  • Bölüm 8: Aritmetik Mantık Birimi (ALU) hakkında bilgi sahibi olup aritmetiksel ve mantıksal komutların nasıl kullanıldığını göreceksiniz.

  • Bölüm 9: Yazmış olduğunuz programları normal akışlarından çıkartıp istediğiniz işlemleri yaptırmak için gerekli olan yönlendirme komutlarını tanıyacaksınız. Ayrıca tekrarlı işlemler için döngülerin nasıl kullanılabileceğini ve farklı senaryoların nasıl işlenebileceğini öğrenmiş olacaksınız.

  • Bölüm 10: Özellikle ikili sayı sistemlerine indirgenip işlem yapılması gereken durumlar için kullanılan kaydırma ve döndürme komutlarının nasıl kullanıldığını öğreneceksiniz.

  • Bölüm 11: Dizi komutları olarak adlandırdığın bir başka ifade ile String komutlarının ne kadar önemli olduğuna şahit olacaksınız.

  • Bölüm 12: Tekrar eden yapıların hazır kod blokları haline getirip kod kalabalığından nasıl kurtulacağınızı ve kendi komutlarınızı nasıl oluşturacağınızı en ince ayrıntısına kadar öğreneceksiniz.

  • Bölüm 13: Kurs boyunca belki de uygulama yapmak için en çok ihtiyaç duyduğumuz kesmelerin ne olduğunu emsali görülmemiş detayları ile öğreneceksiniz.

  • Bölüm 14: Verilerimizi kalıcı olarak saklamak istediğimiz durumlarda dosyalara ihtiyaç duyarız bu bölümde de dosya ve klasör işlemlerinin nasıl gerçekleştirildiğine kesmeler penceresinden bakacağız.

  • Bölüm 15: Güncelleme(19.07.2020)-Her ay proje eklemeyi düşündüğüm bu bölüme işlerimden dolayı maalesef her ay ekleme yapamayacağım.

  • Bölüm 16: En başında söylediğim gibi sizlerden kullanmış olduğum kaynakları ve hazırlamış olduğum dokümanları gizlemeden bu bölümde paylaşacağım.

  • Bölüm 17: Sizlerden gelen sorular üzerine eklediğim bu bölümde temel I/O(Girdi/Çıktı) işlemlerini ve donanım kesmelerini öğreneceksiniz.


Content

Temel Bilgiler

Kurs Kimlere Yönelik ve Nasıl Çalışılmalıdır?

Mikroişlemci ve Mikrodenetleyici Nedir?

Bilgisayar Mimarisi Nedir?

İşlemci Mimarisi (x86 ve x64) Farkları Nelerdir?

Hafıza Ölçü Birimleri

İşlemci Nasıl Çalışır?

İşlemci ve RAM İlişkisi

Assembly Nedir? Assembler Nedir?

Derleyici Nedir? Yorumlayıcı Nedir?

Algoritma Oluşturma: Flowgortihm

Algoritma Nedir? Sözde Kod Nedir?

Akış Diyagramları

Flowgorithm Nedir? Kurulumu Nasıl Yapılır?

Flowgortihm Arayüz ve Araçları

Veri Tipleri

Operatörler

Dahili Fonksiyonlar

Akış Diyagramları Elemanları

Örnek1: Faktöriyel Hesaplama

Örnek2: Üçgen Alan Hesaplama

Örnek3: Not Hesaplama

Örnek4: Sayı Sıralama

Örnek5: Sezar Şifreleme

Sayı Sistemleri

Onluk Sayı Sistemi

İkilik Sayı Sistemi

Sekizlik Sayı Sistemi

Onaltılık Sayı Sistemi

Onluk Sayı Sistemi Dönüşümleri

İkilik Sayı Sistemi Dönüşümleri

Sekizlik Sayı Sistemi Dönüşümleri

Onaltılık Sayı Sistemi Dönüşümleri

İkili Sayı Sisteminde Dört İşlem

Sekizlik Sayı Sisteminde Dört İşlem

Onaltılık Sayı Sisteminde Dört İşlem

Tümleyen Aritmetiği

ASCII Kodları

Intel8086 ve Emu8086

Intel8086 İşlemcisi

Segment Kaydedicileri ve RAM

Verilerin RAM Üzerindeki Durumu

Emu8086 Nedir ve Kurulumu Nasıl Yapılır?

Emu8086 Arayüz ve Araçları

Tutorial (Öğretici) Kullanımı

Kod Şablonları (COM, EXE, BIN, BOOT)

Derleyici Yazım Formatı ve Segment Tanımlamaları

8086 Komut Kümesi

Veri Saklama ve Erişimi

Değişkenler (Variables)

Diziler (Arrays)

Sabitler (Constants)

Hafıza Erişim Yöntemleri (Adresleme Modları)

Temel Komutlar

MOV (Kopyalama) Komutu

LEA (Etkin Adres) Komutu

XCHG (Yer Değiştirme Komutu)

INC ve DEC (Arttırma ve Azaltma) Komutları

XLATB (Eşleştirme) Komutu

JMP (Atlama) Komutu

LOOP (Döngü) Komutu

Örnek1: COM Dosyası-Dizi Kopyalama

Örnek2: COM-Dosyası-Tersten Dizi Kopyalama

Örnek3: EXE Dosyası-XLATB Komutu ile Eleman Kopyalama

Örnek4: EXE Dosyası-Aynı Dizi İçerisinde Değer Arttırma

Stack (Yığın)

Stack (Yığın) Nedir?

POP ve PUSH Komutları

PUSHA ve POPA Komutları

PUSF ve POPF Komutları

Aritmetik ve Mantık Komutları

Aritmetik-Mantık Birimi ve Bayraklar

Bayrak Değişim Komutları

Aritmetiksel Komutlar-Toplama (ADD-ADC)

Aritmetiksel Komutlar-Çıkarma (SUB-SBB)

Aritmetiksel Komutlar-Çarpma (MUL-IMUL)

Aritmetiksel Komutlar-Bölme (DIV-IDIV)

Aritmetiksel İşlemler-İşaret Genişletme (CBW-CWD)

Mantıksal Komutlar-AND (VE)

Mantıksal Komutlar-OR (VEYA)

Mantıksal Komutlar-XOR (ÖZEL VEYA)

Mantıksal Komutlar-NOT (TERSLEME)

Mantıksal Komutlar-TEST

Örnek1: Dizi Elemanlarının Karesini alma

Örnek2: İndisli Çıkarma İşlemi

Örnek3: Dizideki Harfleri Büyütme

Örnek4: Değer Sınırlama

Program Akış Kontrolü

Program Akış Kontrolü Nedir?

Tek Bayrağı Kontrol Eden Atlama Komutları

İşaretli Sayılar İçin Atlama Komutları

İşaretsiz Sayılar İçin Atlama Komutları

Döngü Komutları

Örnek1: LOOP Olmadan Döngü Oluşturma

Örnek2: Taşma Kontrolü

Örnek3: Negatif ve Pozitif Sayı Ayrıştırma

Örnek4: Ad Eşitlik Kontrolü

Kaydırma ve Döndürme Komutları

SHR ve SHL Komutları

SAR ve SAL Komutları

ROR ve ROL Komutları

RCR ve RCL Komutları

Örnek1: Aktif Bit Sayısını Bulma

Örnek2: Parçalı Sayı Değeri Elde Etme

Dizi (String) Komutları

Data Segment ve Extra Segment Kullanımı

Kopyalama Komutları 1: MOVSB MOVSW

Kopyalama Komutları 2: LODSB LODSW

Kopyalama Komutları 3: STOSB STOSW

Karşılaştırma Komutları 1: CMPSB CMPSW

Karşılaştırma Komutları 2: SCASB SCASW

Tekrarlama Komutları: REP REPx REPxx

Örnek1: Diziyi Boşluk Karakterine Göre Parçalama

Örnek2: Diziyi Boşluk Karakterine Göre Parçalama 2

Örnek3: Dizide Tekrar Eden Eleman Sayısını Bulma

Prosedürler ve Makrolar

Prosedür (Procedur) Nedir?

Örnek1: Prosedür ile Boşluk Sayısını Bulma

Makro (Macro) Nedir?

Örnek2: Makro ile Dizi Kopyalama

Kesmeler (Interrupts)

Kesme Nedir?

BIOS Kesmeleri

Örnek1: Dizi Değerlerini Karakter Olarak Yazdırma

Örnek2: Kullanıcıdan Karakter Alıp Yazdırma

Örnek3: Girilen Sayıya Göre Ekran Boyama

MSDOS Kesmeleri

Örnek1: Alt Alta Karakter Yazdırma

Örnek2: Tek Haneli Toplama İşlemi

Örnek3: Ad ve Soyad Bilgisi Alma

Tarih ve Zaman Kesmeleri

Klasör ve Dosya İşlemleri

Klasör ve Dosya Kesmelerini Tanıyalım

Sürücü İşlemleri

Klasör İşlemleri 1: Oluşturma ve Silme

Klasör İşlemleri 2: Geçerli Dizin Ayarlama ve Alma

Klasör İşlemleri 3: Yeniden Adlandırma

Dosya İşlemleri 1: Oluşturma ve Silme

Dosya İşlemleri 2: Açma ve Kapatma

Dosya İşlemleri 3: Veri Yazma ve Okuma

Dosya İşlemleri 4: Yeniden Adlandırma ve Taşıma

Örnek Projeler

Projeler Hakkında

Kaynaklar ve Dokümanlar

Hazırladığım Dokümanlar


Reviews

T
Turgut14 May 2021

Microprocessors dersi için aldım. Gerçekten çok faydalı bir kurs, çok güzel ve anlaşılır bir şekilde anlatıyor.

A
Ateş25 April 2021

Udemy'de çok fazla kaynak olmayan bu konuda hocamız çok güzel bir kurs hazırlamış. Hocamızın hitabeti gayet iyi , hazırladığı dökümanlar da çok faydalı. Herkese tavsiye ederim.

Y
Yağmur25 March 2021

Zor bir dil olduğu için öğrenmekte sıkıntılar yaşayacağımı düşünmüştüm ancak eğitmenin konuya son derece hakim olması ve anlatımındaki akıcılığı bütün ön yargılarımı ortadan kadırdı. Kesinlikle kursu alarak çok doğru bir karar verdiğii düşünüyorum. Eğitmene vermiş olduğu bilgilerden dolayı çok teşekkür ederim.

E
Emre21 March 2021

Mikroişlemciler dersi için kursu takip ediyorum. Türkçe en kaliteli içeriklerden birisi. Hocamıza böyle bir içerik paylaştığı ve emekleri için teşekkürler.

F
Faruk10 March 2021

Elektrik elektronik okuyorum. Mikroişlemci dersim için aldım bu dersi. Hocamız mantığını açıklayarak ders anlatıyor, çok beğendim.

K
Kaya15 February 2021

Gerçekten şahane bir kurs öğrenmek istiyorsanız hiç düşünmeden alınız derim. Kurs boyunca örnekleri ben elimden geldiğince kendim çözmeye çalıştım ama örnek projeleri gerçekten sıfırdan yardım almadan yapmak güç. Ama hocamız her şeyi detaylı detaylı anlattığından her ince detayını kavramış oldum. Özetlemek gerekirse aldığım en iyi kurs oldu udemy'den. Mert hocamıza bu içeriği yarattığı için sonsuz teşekkürler.

A
Arda19 January 2021

Kurs gerçekten güzel, öğrenmek isteyen birisi için veli nimet niteliğinde. Notu kırmamda ki tek neden, mükemmel olmaması. Yani hiçbir şey mükemmel değildir bu nedenle yapıcı bir eleştiride bulunmam gerekirse, zaten videolarda öğretmenin yüzünün görünmesi gerçekten çok büyük bir artı evet ama keşke beden dilini de bu anlatıma dahil etseydi, çok daha güzel bir kurs olurdu. Ancak bu fiyata alınmış en güzel hizmetlerden birisi olduğunu düşünüyorum.

T
Temel31 October 2020

Bilgisi konusunda şüphem yok ve tek derdi öğretmek olan bir eğitmen bence.Hangi eğitmen kaynağını verip isterseniz iade edin der ki?

U
Ufuk5 September 2020

Gerçekten mikroişlemciler hakkında çok şey katacak bir eğitimdi. Herkesin almasını tavsiye ediyorum. Akıcı ve çok öğretici bir deneyimdi.

S
Selçuk7 July 2020

Çok detaylı bir anlatım var. çok emek harcanmış. konuya uzak olanlar bile sabırla kursa devam ettiklerinde iyi bir yetenek kazanacaklarına inanıyorum. eğiticinin mevcut kurs konularının dışında farklı bir konuda kurs hazırlamasını bekliyorum. eğiticiye başarılar diliyorum.

H
Hayri4 June 2020

Öncelikle Mert Bey'e teşekkür ederim böyle sağlam bir kaynak üretip güzel bir anlatım sağlayarak, Ülkemizdeki tüm üniversitelerde sorun yasanilan bu Microislemci ders egitimi ve içerik sayesinde daha kolay anlaşılır hale geldi. Ben Elektrik Elektronik Mühendisliği öğrencisiyim o kadar güzel öğrenilmesi gereken yerlere değinmiş ve öğretici şekilde anlatmış ki, Yazılımı sevdiren Hocam Mert Bey oldu. Tavsiye ederim daha önce olsaymış bu eğitim keşke diyorum.

A
Abdulkadi̇r28 May 2020

Hocamız sagolsun çok ince detaylara girerek herşeyi anlatıyor su ana kadar kursta şu kötü olmuş dediğim bir şey henüz yok teşekür ederim kendisine

K
Kemal22 May 2020

Anlatım akıcı , kursun şuan yarısındayım , kaynak paylaşımı için teşekür ederim , alıp pişman olmadığım kurslardan birisi , türkçe kaynak bulması zor iyi bir kaynak bulmak daha da zor , bu kursu hazırladığınız için teşekür ederim :)

A
Ahmet14 May 2020

Hocamızın anlatımı gayet iyi binary sayılarda temel sayısal elektronik dersleri var ayrıca kurslarda algoritma temelide bulunuyor assembly içinse her detayı bulmak mümkün tekrar hocamıza teşekküler

P
PalabıyıkEmreCan9 May 2020

YouTube kanalındaki Assembly serisini tümüyle izleyip uygulayıp bitirdiğimde bana çok fazla bilgi kattığı için bu puanı verdim. Eminim bu kurstan da öğreneceklerim olacaktır.


3073606

Udemy ID

4/30/2020

Course created date

5/10/2020

Course Indexed date
Bot
Course Submitted by