Asembler. Programowanie - Helion
Autor: Dawid Farbaniec
ISBN: 978-83-283-5495-1
ok艂adka: mi臋kka
Data wydania: 2019-05-01
Ksi臋garnia: Helion
Cena ksi膮偶ki: 31,43 z艂 (poprzednio: 44,90 z艂)
Oszcz臋dzasz: 30% (-13,47 z艂)
ISBN: 978-83-283-5495-1
ok艂adka: mi臋kka
Data wydania: 2019-05-01
Ksi臋garnia: Helion
Cena ksi膮偶ki: 31,43 z艂 (poprzednio: 44,90 z艂)
Oszcz臋dzasz: 30% (-13,47 z艂)
Osoby kt贸re kupowa艂y "Asembler. Programowanie", wybiera艂y tak偶e:
- Cisco CCNA 200-301. Kurs video. Administrowanie bezpiecze艅stwem sieci. Cz臋艣膰 3 665,00 z艂, (39,90 z艂 -94%)
- Cisco CCNA 200-301. Kurs video. Administrowanie urz膮dzeniami Cisco. Cz臋艣膰 2 665,00 z艂, (39,90 z艂 -94%)
- Cisco CCNA 200-301. Kurs video. Podstawy sieci komputerowych i konfiguracji. Cz臋艣膰 1 665,00 z艂, (39,90 z艂 -94%)
- Impact of P2P and Free Distribution on Book Sales 427,14 z艂, (29,90 z艂 -93%)
- Cisco CCNP Enterprise 350-401 ENCOR. Kurs video. Programowanie i automatyzacja sieci 443,33 z艂, (39,90 z艂 -91%)
Spis tre艣ci
Asembler. Programowanie -- spis tre艣ci
- S艂owem wst臋pu
- O ksi膮偶ce
- O autorze
- Cz臋艣膰 I Wprowadzenie
- Rozdzia艂 1. Od pocz膮tku
- 1.1. Systemy liczbowe
- 1.2. Liczby ze znakiem i bez znaku
- Warto艣膰 rozszerzona z zachowaniem znaku
- 1.3. Kod ASCII i Unicode
- 1.4. Systemy operacyjne Windows
- 1.5. Podstawy dzia艂ania kompilator贸w
- Rozdzia艂 2. Architektura procesor贸w x86(-64)
- 2.1. Tryby pracy
- 2.2. Rejestry procesora
- 2.3. Pami臋膰 operacyjna
- 2.4. Stos
- 2.5. Tryby adresowania
- 2.6. Kod maszynowy
- 2.7. Format kodowania instrukcji
- 2.8. Przerwania
- 2.9. Zestawy instrukcji
- 2.10. Koprocesor
- Rozdzia艂 3. Narz臋dzia programistyczne
- 3.1. Visual Studio i rozszerzenie do programowania w Asemblerze
- Tworzenie projektu MASM w Visual Studio
- 3.2. Alternatywne podej艣cie wyodr臋bnienie narz臋dzi konsolowych
- 3.3. Edytor zasob贸w
- 3.4. Edytor heksadecymalny
- 3.5. Debugger
- 3.1. Visual Studio i rozszerzenie do programowania w Asemblerze
- Rozdzia艂 4. Wst臋p do Asemblera x86
- 4.1. Troch臋 historii Asembler dla 16-bitowego podsystemu MS-DOS
- 4.2. Program Witaj, 32-bitowy 艣wiecie Asemblera!
- 4.3. Sk艂adnia wysokopoziomowa w Asemblerze
- Rozdzia艂 5. Wst臋p do Asemblera x86-64
- 5.1. Program Witaj, 64-bitowy 艣wiecie Asemblera!
- 5.2. Debugger analiza programu krok po kroku
- 5.3. Zmienne i sta艂e
- Typy ca艂kowite
- Zmienne o rozmiarze bajta lub ci膮gu bajt贸w
- Zmienne o rozmiarze s艂owa
- Zmienne o rozmiarze podw贸jnego s艂owa
- Zmienne o rozmiarze poczw贸rnego s艂owa
- Zmienne o rozmiarze sze艣ciu bajt贸w
- Zmienne o rozmiarze dziesi臋ciu bajt贸w
- Zmienna o rozmiarze szesnastu bajt贸w
- Typy zmiennoprzecinkowe
- Struktury
- Sta艂e
- Typy ca艂kowite
- 5.4. Instrukcje skoku warunkowego i bezwarunkowego
- 5.5. Etykiety nazwane i anonimowe
- 5.6. Metody tworzenia p臋tli
- 5.7. Konwencje wywo艂ywania funkcji
- 5.8. Tworzenie w艂asnych funkcji (procedur)
- Cz臋艣膰 II Programowanie w Asemblerze x86-64 dla Windows
- Rozdzia艂 6. Podstawy programowania aplikacji Windows
- 6.1. Tworzenie konsoli tekstowej
- 6.2. Pobieranie i wy艣wietlanie danych
- 6.3. Kolory t艂a i tekstu w konsoli
- 6.4. Tworzenie okna dialogowego
- 6.5. Kontrolki interfejsu graficznego u偶ytkownika
- Rozdzia艂 7. Napisy (ci膮gi znak贸w)
- 7.1. Deklaracja ci膮g贸w znak贸w
- 7.2. Dyrektywa byte ptr [] i podobne
- 7.3. Kopiowanie napis贸w
- Rozdzia艂 8. Informacje o 艣rodowisku pracy
- 8.1. Identyfikacja procesora
- 8.2. Odczytywanie wersji systemu
- Rozdzia艂 9. Praca z plikami
- 9.1. Tworzenie plik贸w i folder贸w
- 9.2. Zapis danych do pliku
- 9.3. Odczyt danych z pliku
- 9.4. Ustawianie wska藕nika pliku
- 9.5. Usuwanie plik贸w
- 9.6. Zamykanie uchwytu pliku
- Rozdzia艂 10. Podstawy wielozadaniowo艣ci
- 10.1. W膮tki
- 10.2. Procesy
- 10.3. Czasomierz
- Rozdzia艂 11. Programowanie sieciowe
- 11.1. Obs艂uga protoko艂u FTP
- 11.2. Gniazda systemu Windows
- Funkcje WinSock
- Aplikacja w architekturze klient serwer
- Rozdzia艂 12. 艁膮czenie Asemblera z j臋zykiem C++
- 12.1. Funkcje Asemblera w projekcie Visual C++
- 12.2. Funkcje wewn臋trzne (ang. intrinsics) w Visual C++
- Przyk艂ad u偶ycia funkcji wewn臋trznej (ang. intrinsic)
- Cz臋艣膰 III Asembler x86-64 w in偶ynierii odwrotnej kodu (RCE)
- Rozdzia艂 13. Narz臋dzia u偶ywane w RCE
- 13.1. Podstawowe narz臋dzia
- Odpluskwiacz (ang. debugger)
- Deasembler (ang. disassembler)
- Edytor szesnastkowy (heksadecymalny)
- Identyfikator plik贸w
- Edytor zasob贸w (ang. resource editor)
- Dekompilator (ang. decompiler)
- 13.2. Wi臋cej narz臋dzi szybsza praca
- 13.1. Podstawowe narz臋dzia
- Rozdzia艂 14. Format plik贸w Portable Executable
- 14.1. Og贸lna budowa pliku PE
- 14.2. Przegl膮danie struktury pliku PE
- Rozdzia艂 15. Proste metody utrudniaj膮ce analiz臋
- 15.1. Szyfrowanie napis贸w
- 15.2. Wykrywanie narz臋dzi typu debugger
- 15.3. Dynamiczne wywo艂ywanie funkcji API
- 15.4. Wykrywanie okna okre艣lonego narz臋dzia
- 15.5. 艢mieciowy kod (ang. junk code)
- Rozdzia艂 16. Modyfikacja plik贸w wykonywalnych PE
- 16.1. Modyfikacja kodu w debuggerze
- 16.2. Modyfikacja kodu w edytorze szesnastkowym
- 16.3. Tworzenie programu typu crack
- Cz臋艣膰 IV Inne odmiany j臋zyka Asembler
- Rozdzia艂 17. Wprowadzenie do MSIL/CIL Asemblera platformy .NET
- 17.1. MSIL/CIL informacje og贸lne
- 17.2. Program Witaj, 艣wiecie! w Asemblerze MSIL
- 17.3. Dekompilacja uzyskanie kodu po艣redniego z pliku EXE
- Metody ochrony przed dekompilacj膮 i analiz膮
- Rozdzia艂 18. Wprowadzenie do WebAssembly Asemblera dla aplikacji webowych
- 18.1. WebAssembly informacje og贸lne
- 18.2. Program Witaj, 艣wiecie WebAssembly!
- Cz臋艣膰 V Instrukcje procesor贸w x86(-64)
- Rozdzia艂 19. Asembler x86(-64) instrukcje og贸lnego przeznaczenia
- 19.1. Instrukcje transferu danych
- Instrukcja MOV
- Instrukcje kopiowania warunkowego CMOVcc
- Instrukcja XCHG
- Instrukcja BSWAP
- Instrukcja XADD
- Instrukcja CMPXCHG
- Instrukcje CMPXCHG8B/CMPXCHG16B
- Instrukcja PUSH
- Instrukcja POP
- Instrukcje PUSHA/PUSHAD
- Instrukcje POPA/POPAD
- Instrukcje CWD/CDQ/CQO
- Instrukcje CBW/CWDE/CDQE
- Instrukcje MOVSX/MOVSXD
- Instrukcja MOVZX
- 19.2. Instrukcje arytmetyczne
- Instrukcja ADCX
- Instrukcja ADOX
- Instrukcja ADD
- Instrukcja ADC
- Instrukcja SUB
- Instrukcja SBB
- Instrukcja IMUL
- Instrukcja MUL
- Instrukcja IDIV
- Instrukcja DIV
- Instrukcja INC
- Instrukcja DEC
- Instrukcja NEG
- Instrukcja CMP
- 19.3. Instrukcje logiczne
- Instrukcja AND
- Instrukcja OR
- Instrukcja XOR
- Instrukcja NOT
- 19.4. Instrukcje przesuni臋膰 i obrot贸w
- Instrukcje SAL/SHL
- Instrukcja SAR
- Instrukcja SHR
- Instrukcja RCL
- Instrukcja RCR
- Instrukcja ROL
- Instrukcja ROR
- Instrukcja SHRD
- Instrukcja SHLD
- 19.5. Instrukcje do operacji na bitach i bajtach
- Instrukcja BT
- Instrukcja BTS
- Instrukcja BTR
- Instrukcja BTC
- Instrukcja BSF
- Instrukcja BSR
- Instrukcje SETcc
- Instrukcja TEST
- Instrukcja CRC32
- Instrukcja POPCNT
- 19.6. Instrukcje manipulacji bitowych
- Instrukcja ANDN
- Instrukcja BEXTR
- Instrukcja BLSI
- Instrukcja BLSMSK
- Instrukcja BLSR
- Instrukcja BZHI
- Instrukcja LZCNT
- Instrukcja MULX
- Instrukcja PDEP
- Instrukcja PEXT
- Instrukcja RORX
- Instrukcje SARX, SHLX, SHRX
- Instrukcja TZCNT
- 19.7. Instrukcje kontroli przep艂ywu
- Instrukcja JMP
- Instrukcje Jcc
- Instrukcje LOOP/LOOPcc
- Instrukcja CALL
- Instrukcja RET
- 19.8. Instrukcje do operacji na napisach
- Instrukcje MOVS*
- Instrukcje CMPS*
- Instrukcje LODS*
- Instrukcje STOS*
- Instrukcje SCAS*
- 19.9. Instrukcje wej艣cia-wyj艣cia
- Instrukcja IN
- Instrukcja OUT
- Instrukcje INS*
- Instrukcje OUTS*
- 19.10. Instrukcje kontroli flag
- 19.11. Instrukcje r贸偶ne
- Instrukcja LEA
- Instrukcja NOP
- Instrukcja UD2
- Instrukcja CPUID
- Instrukcja MOVBE
- 19.1. Instrukcje transferu danych
- Zako艅czenie