Jakieś Referencje / samouczki ASM x86? [zamknięte]

Próbuję znaleźć jakieś odniesienia do języków Asemblacji x86. Tutoriale/przykłady, które pomogą mi zrozumieć. - Dzięki

Author: kristianp, 2008-10-18

5 answers

 22
Author: willurd,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-10-18 08:06:18

Polecam Roby ' s PC Assembly Tutorial Lesson. Jest również dostępny do pobrania . Zawiera diagramy i przykłady.

"ta lekcja montażu jest przeznaczona dla x86, tzn. dla Intel 8088, 80286, 80386, itd. Tak, jest kompatybilny z Pentium lub Pentium III. użytkownicy AMD mogą również korzystać z tego samouczka, ponieważ obejmuję tylko podstawy. Zakładam, że masz jakieś pojęcie o jakimś języku programowania, takim jak Pascal, C lub c++. I don ' t want to go over podstawowe pojęcia programowania od nowa."

  • lekcja wstępna -- podstawowe pojęcia niskiego poziomu
    Rozmowy o rejestrach, flagach, pamięci, stosach i przerwaniach. Nie przejmuj się tym zbytnio. Możesz być mylony z tak wieloma pojęciami. Jednak, jak śledzić lekcji, myślę, że wszystkie pojęcia powinny być wystarczająco jasne.
  • Rozdział 1 -- Struktura programu COM
    Rozpocznij swoją podróż w montażu, obserwując najprostszy program struktura.
  • Rozdział 2 -- zmienne w zbiorze
    Odkryj unikalną koncepcję zmiennych w języku asemblowania. Pojęcie to znacznie różni się od zwykłego języka programowania wysokiego poziomu. Wyjaśniam również, jak działa Instrukcja mov.
  • Rozdział 3 -- Instrukcje Arytmetyczne
    Jak możemy wykonać arytmetykę w assembly?
  • Rozdział 4 -- logika bitowa, Część 1
    Używanie and, or, and xor do wykonywania różnych logicznych zadania, w tym maskowanie bitów i przerzucanie.
  • Rozdział 5 -- logika bitowa, część 2
    Bitowe przesuwanie i toczenie może być przydatne w wspomaganiu maskowania bitów określonych w następnym rozdziale.
  • Rozdział 6 -- Rozgałęzienie
    Branch jest niezbędny dla wszystkich programów. Wypróbujmy kilka instrukcji rozgałęziających montaż, aby poprawić logikę naszych programów.
  • Rozdział 7 -- Loop
    Instrukcja pętli w montażu może być przydatna, aby przypominać wyższy poziom konstrukcja języka programowania.
  • Rozdział 8 -- Interrupt Essentials
    Korzystanie ze wspólnych usług przerwań systemowych do wykonywania wyjścia ekranu i pobierania danych wejściowych.
  • Rozdział 9 -- Stosy Korzystanie z funkcji push i pop oraz wiedza, jak zachowuje się stos. Niektóre szczegóły dotyczące trybu tiny memory są wyjaśnione tutaj.
  • Rozdział 10 -- Tworzenie Podprogramów
    Wykorzystanie podprogramów do naśladowania podejścia do programowania strukturalnego.
  • Rozdział 11 -- Makra
    Korzystanie z makr.
  • Rozdział 12 -- Dostęp Do Tablicy
    Zobacz jak assembly dostarcza bardzo prymitywne instrukcje dostępu do tablicy.
  • Chapter 13 -- Basic string Instructions
    Korzystanie z różnych instrukcji ciągów: movs, Lod, cmps, scas i stos.
  • Rozdział 14 -- Struktury
    Używając struktur takich jak te w językach wysokiego szczebla. Struktura w assembly jest równoznaczna ze strukturą w C / C++ i zapisem w Pascal.
  • Rozdział 15 -- trochę teorii
    Wyjaśniono tryby adresowania i tryby pamięci oraz architekturę komputera 101.
 4
Author: splattne,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-03-18 19:30:08

Najlepszym, najbardziej wszechstronnym źródłem Assembly jaki widziałem jest książka" Art of Assembly Language ". Jest do pobrania za darmo, w kilku wersjach.

 3
Author: idan315,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-10-08 19:46:58

Dla odniesienia, podręczniki referencyjne Intel IA-32 są ostatecznym źródłem.

 2
Author: Paul Nathan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-10-18 13:22:12

Uważam, że Profesjonalny język Montażu to dobry początek.

 1
Author: Calyth,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-01-07 01:56:42