Hacker's Delight

Hacker's Delight

Einband:
Fester Einband
EAN:
9780321842688
Untertitel:
Englisch
Genre:
Informatik
Autor:
Henry Warren, Henry S. Warren
Herausgeber:
Pearson
Auflage:
2. Auflage
Anzahl Seiten:
512
Erscheinungsdatum:
25.09.2012
ISBN:
978-0-321-84268-8

In Hacker's Delight, Second Edition , Hank Warren once again compiles an irresistible collection of programming hacks: timesaving techniques, algorithms, and tricks that help programmers build more elegant and efficient software, while also gaining deeper insights into their craft. Warren's hacks are eminently practical, but they're also intrinsically interesting, and sometimes unexpected, much like the solution to a great puzzle. They are, in a word, a delight to any programmer who is excited by the opportunity to improve.

Extensive additions in this edition include

A new chapter on cyclic redundancy checking (CRC), including routines for the commonly used CRC-32 code
A new chapter on error correcting codes (ECC), including routines for the Hamming code
More coverage of integer division by constants, including methods using only shifts and adds
Computing remainders without computing a quotient
More coverage of population count and counting leading zeros
Array population count
New algorithms for compress and expand
An LRU algorithm
Floating-point to/from integer conversions
Approximate floating-point reciprocal square root routine
A gallery of graphs of discrete functions
Now with exercises and answers



Autorentext
Henry S. Warren, Jr., has had a fifty-year career with IBM, spanning from the IBM 704 to the PowerPC and beyond. He has worked on various military command and control systems and on the SETL (SET Language) project under Jack Schwartz. Since 1973, Hank has been with IBM’s Research Division, focusing on compilers and computer architectures. He currently works on a supercomputer project aimed at an exaflop. Hank received his Ph.D. in computer science from the Courant Institute at New York University.

Klappentext
In Hacker's Delight, Second Edition, Hank Warren once again compiles an irresistible collection of programming hacks: timesaving techniques, algorithms, and tricks that help programmers build more elegant and efficient software, while also gaining deeper insights into their craft. Warren's hacks are eminently practical, but they're also intrinsically interesting, and sometimes unexpected, much like the solution to a great puzzle. They are, in a word, a delight to any programmer who is excited by the opportunity to improve. Extensive additions in this edition include A new chapter on cyclic redundancy checking (CRC), including routines for the commonly used CRC-32 code A new chapter on error correcting codes (ECC), including routines for the Hamming code More coverage of integer division by constants, including methods using only shifts and adds Computing remainders without computing a quotient More coverage of population count and counting leading zeros Array population count New algorithms for compress and expand An LRU algorithm Floating-point to/from integer conversions Approximate floating-point reciprocal square root routine A gallery of graphs of discrete functions Now with exercises and answers

Zusammenfassung
"This is the first book that promises to tell the deep, dark secrets of computer arithmetic, and it delivers in spades. It contains every trick I knew plus many, many more. A godsend for library developers, compiler writers, and lovers of elegant hacks, it deserves a spot on your shelf right next to Knuth."--Josh Bloch (Praise for the first edition)In Hacker’s Delight, Second Edition, Hank Warren once again compiles an irresistible collection of programming hacks: timesaving techniques, algorithms, and tricks that help programmers build more elegant and efficient software, while also gaining deeper insights into their craft. Warren’s hacks are eminently practical, but they’re also intrinsically interesting, and sometimes unexpected, much like the solution to a great puzzle. They are, in a word, a delight to any programmer who is excited by the opportunity to improve.
Extensive additions in this edition include A new chapter on cyclic redundancy checking (CRC), including routines for the commonly used CRC-32 codeA new chapter on error correcting codes (ECC), including routines for the Hamming codeMore coverage of integer division by constants, including methods using only shifts and addsComputing remainders without computing a quotientMore coverage of population count and counting leading zerosArray population countNew algorithms for compress and expandAn LRU algorithmFloating-point to/from integer conversionsApproximate floating-point reciprocal square root routineA gallery of graphs of discrete functionsNow with exercises and answers

Inhalt
Foreword xiiiPreface xvChapter 1: Introduction 11.1 Notation 11.2 Instruction Set and Execution Time Model 5Chapter 2: Basics 112.1 Manipulating Rightmost Bits 112.2 Addition Combined with Logical Operations 162.3 Inequalities among Logical and Arithmetic Expressions 172.4 Absolute Value Function 182.5 Average of Two Integers 192.6 Sign Extension 192.7 Shift Right Signed from Unsigned 202.8 Sign Function 202.9 Three-Valued Compare Function 212.10 Transfer of Sign Function 222.11 Decoding a “Zero Means 2**n” Field 222.12 Comparison Predicates 232.13 Overflow Detection 282.14 Condition Code Result of Add, Subtract, and Multiply 362.15 Rotate Shifts 372.16 Double-Length Add/Subtract 382.17 Double-Length Shifts 392.18 Multibyte Add, Subtract, Absolute Value 402.19 Doz, Max, Min 412.20 Exchanging Registers 452.21 Alternating among Two or More Values 482.22 A Boolean Decomposition Formula 512.23 Implementing Instructions for all 16 Binary Boolean Operations 53Chapter 3: Power-of-2 Boundaries 593.1 Rounding Up/Down to a Multiple of a Known Power of 2 593.2 Rounding Up/Down to the Next Power of 2 603.3 Detecting a Power-of-2 Boundary Crossing 63Chapter 4: Arithmetic Bounds 674.1 Checking Bounds of Integers 674.2 Propagating Bounds through Add’s and Subtract’s 704.3 Propagating Bounds through Logical Operations 73Chapter 5: Counting Bits 815.1 Counting 1-Bits 815.2 Parity 965.3 Counting Leading 0’s 995.4 Counting Trailing 0’s 107Chapter 6: Searching Words 1176.1 Find First 0-Byte 1176.2 Find First String of 1-Bits of a Given Length 1236.3 Find Longest String of 1-Bits 1256.4 Find Shortest String of 1-Bits 126Chapter 7: Rearranging Bits And Bytes 1297.1 Reversing Bits and Bytes 1297.2 Shuffling Bits 1397.3 Transposing a Bit Matrix 1417.4 Compress, or Generalized Extract 1507.5 Expand, or Generalized Insert 1567.6 Hardware Algorithms for Compress and Expand 1577.7 General Permutations, Sheep and Goats Operation 1617.8 Rearrangements and Index Transformations 1657.9 An LRU Algorithm 166Chapter 8: Multiplication 1718.1 Multiword Multiplication 1718.2 High-Orde…


billigbuch.ch sucht jetzt für Sie die besten Angebote ...

Loading...

Die aktuellen Verkaufspreise von 6 Onlineshops werden in Realtime abgefragt.

Sie können das gewünschte Produkt anschliessend direkt beim Anbieter Ihrer Wahl bestellen.


Feedback