reklama - zainteresowany?

Uczta programistów - Helion

Uczta programistów
Autor: Henry S. Warren
Tytuł oryginału: Hackers Delight
Tłumaczenie: Marek Pętlicki (rozdz. 1 - 9), Bartłomiej Garbacz (rozdz. 10 - 16, dod. A, B)
ISBN: 83-7361-220-3
stron: 336, Format: B5, okładka: miękka
Data wydania: 2003-10-21
Księgarnia: Helion

Cena książki: 39,00 zł

Dodaj do koszyka Uczta programistów

Tagi: Techniki programowania

Praktyczne rozwiązania dla zaawansowanych programistów

Do tworzenia wydajnych programów nie wystarczy teoretyczna wiedza o algorytmach, strukturach danych i inżynierii oprogramowania. Istnieje pokaźna liczba sztuczek, sprytnych technik i praktycznych rozwiązań, których znajomość jest niezbędna każdemu programiście.

Niniejsza książka zawiera pokaźny zestaw technik, które pomogą zaoszczędzić sporo czasu. Techniki te zostały opracowane przez twórców kodu poszukujących eleganckich i wydajnych sposobów tworzenia lepszego oprogramowania. W "Uczcie programistów" doświadczony programista Hank Warren dzieli się z Czytelnikami znanymi sobie sztuczkami, które zgromadził wraz z imponującym doświadczeniem w dziedzinie programowania aplikacji i systemów operacyjnych. Większość z tych sztuczek jest niezwykle praktyczna, niektóre zostały przedstawione jako ciekawostki lub zaskakujące rozwiązania. Ich zestawienie stanowi niesamowitą kolekcję, która będzie pomocna nawet dla najbardziej doświadczonych programistów w rozszerzeniu ich umiejętności.

W książce opisano następujące zagadnienia:
  • Obszerna kolekcja użytecznych sztuczek programistycznych
  • Drobne algorytmy rozwiązujące często spotykane problemy
  • Algorytmy kontroli przekroczenia ograniczeń
  • Zmiana kolejności bitów i bajtów
  • Dzielenie całkowite i dzielenie przez stałe
  • Elementarne operacje na liczbach całkowitych
  • Kod Gray"a
  • Krzywa Hilberta
  • Formuły wyznaczania liczb pierwszych

Niniejsza książka jest doskonałą pozycją dla wszystkich programistów, którzy mają zamiar tworzyć wydajny kod. "Uczta programistów" nauczy Cię tworzenia aplikacji wysokiej jakości -- wyższej niż wymagana na uczelniach i kursach programowania.

Dodaj do koszyka Uczta programistów

 

Osoby które kupowały "Uczta programistów", wybierały także:

  • Wyrażenia regularne od podstaw
  • Projektowanie systemów rozproszonych. Wzorce i paradygmaty dla skalowalnych, niezawodnych usług
  • Programuj tak, aby nie naprawiać. Planowanie projektów i systemów
  • F# 4.0 dla zaawansowanych. Wydanie IV
  • Systemy reaktywne. Wzorce projektowe i ich stosowanie

Dodaj do koszyka Uczta programistów

Spis treści

Uczta programistów -- spis treści

Przedmowa (9)

Wstęp (11)

Rozdział 1. Wprowadzenie (13)

  • 1.1. Notacja (13)
  • 1.2. Zestaw instrukcji i model wykonawczy (17)

Rozdział 2. Podstawy (23)

  • 2.1. Manipulowanie prawostronnymi bitami (23)
  • 2.2. Łączenie dodawania z operacjami logicznymi (27)
  • 2.3. Nierówności w wyrażeniach logicznych i arytmetycznych (29)
  • 2.4. Wartość bezwzględna (30)
  • 2.5. Rozszerzenie o znak (31)
  • 2.6. Przesunięcie w prawo ze znakiem za pomocą instrukcji przesunięcia bez znaku (32)
  • 2.7. Funkcja signum (32)
  • 2.8. Funkcja porównania trójwartościowego (33)
  • 2.9. Przeniesienie znaku (34)
  • 2.10. Dekodowanie pola "zero oznacza 2n" (34)
  • 2.11. Predykaty porównań (35)
  • 2.12. Wykrywanie przepełnienia (40)
  • 2.13. Kod warunkowy operacji dodawania, odejmowania i mnożenia (49)
  • 2.14. Przesunięcia cykliczne (50)
  • 2.15. Dodawanie i odejmowanie liczb o podwójnej długości (51)
  • 2.16. Przesunięcia liczb o podwójnej długości (52)
  • 2.17. Operacje dodawania, odejmowania i wyznaczania wartości bezwzględnej na wartościach wielobajtowych (53)
  • 2.18. Doz, Max oraz Min (54)
  • 2.19. Wymiana wartości między rejestrami (56)
  • 2.20. Wymiana dwóch lub większej liczby wartości (59)

Rozdział 3. Ograniczenia potęg dwójki (63)

  • 3.1. Zaokrąglanie do wielokrotności znanych potęg liczby 2 (63)
  • 3.2. Zaokrąglanie w górę lub w dół do następnej potęgi liczby 2 (64)
  • 3.3. Wykrywanie przekroczenia ograniczeń potęgi dwójki (67)

Rozdział 4. Ograniczenia arytmetyczne (71)

  • 4.1. Kontrola ograniczeń liczb całkowitych (71)
  • 4.2. Ograniczenia zakresów w operacjach sumy i różnicy (74)
  • 4.3. Ograniczenia zakresów w operacjach logicznych (78)

Rozdział 5. Zliczanie bitów (85)

  • 5.1. Zliczanie jedynek (85)
  • 5.2. Parzystość (94)
  • 5.3. Zliczanie zer wiodących (97)
  • 5.4. Zliczanie zer końcowych (104)

Rozdział 6. Przeszukiwanie słów (111)

  • 6.1 Wyszukiwanie pierwszego bajtu o wartości 0 (111)
  • 6.2. Wyszukiwanie pierwszego ciągu jedynek o zadanej długości (117)

Rozdział 7. Manipulacja bitami i bajtami (121)

  • 7.1. Odwracanie kolejności bitów i bajtów (121)
  • 7.2. Tasowanie bitów (126)
  • 7.3. Transponowanie macierzy bitów (128)
  • 7.4. Kompresja lub uogólniona ekstrakcja (137)
  • 7.5. Uogólnione permutacje, operacja typu "owce i kozły" (143)
  • 7.6. Zmiana kolejności oraz transformacje oparte na indeksach (148)

Rozdział 8. Mnożenie (151)

  • 8.1. Mnożenie czynników wieloelementowych (151)
  • 8.2. Bardziej znacząca połowa 64-bitowego iloczynu (154)
  • 8.3. Konwersje między bardziej znaczącą połową 64-bitowego iloczynu ze znakiem i bez znaku (155)
  • 8.4. Mnożenie przez stałe (156)

Rozdział 9. Dzielenie całkowitoliczbowe (161)

  • 9.1. Warunki wstępne (161)
  • 9.2. Dzielenie wartości wieloelementowych (165)
  • 9.3. Krótkie dzielenie bez znaku za pomocą dzielenia ze znakiem (170)
  • 9.4. Długie dzielenie bez znaku (173)

Rozdział 10. Dzielenie liczb całkowitych przez stałe (181)

  • 10.1. Dzielenie ze znakiem przez znaną potęgę liczby 2 (181)
  • 10.2. Reszta ze znakiem z dzielenia przez znaną potęgę liczby 2 (182)
  • 10.3. Dzielenie i reszta ze znakiem w przypadku innych wartości niż potęgi liczby 2 (184)
  • 10.4. Dzielenie ze znakiem przez dzielniki ( 2 (187)
  • 10.6. Zawieranie obsługi w kompilatorze (197)
  • 10.7. Inne zagadnienia (201)
  • 10.8. Dzielenie bez znaku (205)
  • 10.9. Dzielenie bez znaku przez dzielniki ( 1 (207)
  • 10.10. Zawieranie obsługi w kompilatorze (210)
  • 10.11. Inne zagadnienia (dzielenia bez znaku) (212)
  • 10.12. Zastosowalność w przypadku dzielenia z modułem i dzielenia z funkcją podłoga (215)
  • 10.13. Podobne metody (215)
  • 10.14. Przykładowe liczby magiczne (216)
  • 10.15. Dzielenie dokładne przez stałe (217)
  • 10.16. Sprawdzanie zerowej reszty po wykonaniu dzielenia przez stałą (225)

Rozdział 11. Niektóre funkcje podstawowe (231)

  • 11.1. Całkowitoliczbowy pierwiastek kwadratowy (231)
  • 11.2 Całkowitoliczbowy pierwiastek sześcienny (239)
  • 11.3. Całkowitoliczbowe podnoszenie do potęgi (241)
  • 11.4. Logarytm całkowitoliczbowy (243)

Rozdział 12. Niezwykłe podstawy systemów liczbowych (251)

  • 12.1. Podstawa -2 (251)
  • 12.2. Podstawa -1 + i (258)
  • 12.3. Inne podstawy (261)
  • 12.4. Najbardziej wydajna podstawa (262)

Rozdział 13. Kod Graya (263)

  • 13.1. Kod Graya (263)
  • 13.2. Zwiększanie wartości liczb całkowitych zakodowanych w kodzie Graya (266)
  • 13.3. Ujemno-binarny kod Graya (267)
  • 13.4. Rys historyczny i zastosowania (268)

Rozdział 14. Krzywa Hilberta (269)

  • 14.1. Rekurencyjny algorytm generowania krzywej Hilberta (271)
  • 14.2. Określanie współrzędnych na podstawie odległości wzdłuż krzywej Hilberta (273)
  • 14.3. Określanie odległości na podstawie współrzędnych na krzywej Hilberta (280)
  • 14.4. Zwiększanie wartości współrzędnych na krzywej Hilberta (282)
  • 14.5. Nierekurencyjny algorytm generowania (285)
  • 14.6. Inne krzywe wypełniające przestrzeń (285)
  • 14.7. Zastosowania (286)

Rozdział 15. Liczby zmiennopozycyjne (289)

  • 15.1. Standard IEEE (289)
  • 15.2. Porównywanie liczb zmiennopozycyjnych za pomocą operacji całkowitoliczbowych (292)
  • 15.3. Rozkład cyfr wiodących (293)
  • 15.4. Tabela różnych wartości (295)

Rozdział 16. Wzory na liczby pierwsze (299)

  • 16.1. Wprowadzenie (299)
  • 16.2. Wzory Willansa (301)
  • 16.3. Wzory Wormella (305)
  • 16.4. Wzory na inne trudne funkcje (306)

Dodatek A Tablice arytmetyczne dla maszyny 4-bitowej (313)

Dodatek B Metoda Newtona (319)

Bibliografia (321)

Skorowidz (325)

Dodaj do koszyka Uczta programistów

Code, Publish & WebDesing by CATALIST.com.pl



(c) 2005-2024 CATALIST agencja interaktywna, znaki firmowe należą do wydawnictwa Helion S.A.