Обратите внимание, что новости можно получать по RSS.
X
-

Информационные технологии, История вычислительной техники и IT

11 февраля 2016, 20:17 (980 дней назад) № 9870
"Hacker’s Delight", Second Edition, 2013. Henry S. Warren, Jr .
Что-то типа Кнута, но современное и предназначенное конкретно для пишущих на ассемблере.
По ссылке ниже - epub. А pdf есть здесь: ссылка
Оглавление:
CHAPTER 1. INTRODUCTION
1–1 Notation
1–2 Instruction Set and Execution Time Model
CHAPTER 2. BASICS
2–1 Manipulating Rightmost Bits
2–2 Addition Combined with Logical Operations
2–3 Inequalities among Logical and Arithmetic Expressions
2–4 Absolute Value Function
2–5 Average of Two Integers
2–6 Sign Extension
2–7 Shift Right Signed from Unsigned
2–8 Sign Function
2–9 Three-Valued Compare Function
2–10 Transfer of Sign Function
2–11 Decoding a “Zero Means 2**n” Field
2–12 Comparison Predicates
2–13 Overflow Detection
2–14 Condition Code Result of Add, Subtract, and Multiply
2–15 Rotate Shifts
2–16 Double-Length Add/Subtract
2–17 Double-Length Shifts
2–18 Multibyte Add, Subtract, Absolute Value
2–19 Doz, Max, Min
2–20 Exchanging Registers
2–21 Alternating among Two or More Values
2–22 A Boolean Decomposition Formula
2–23 Implementing Instructions for all 16 Binary Boolean Operations
CHAPTER 3. POWER-OF-2 BOUNDARIES
3–1 Rounding Up/Down to a Multiple of a Known Power of 2
3–2 Rounding Up/Down to the Next Power of 2
3–3 Detecting a Power-of-2 Boundary Crossing
CHAPTER 4. ARITHMETIC BOUNDS
4–1 Checking Bounds of Integers
4–2 Propagating Bounds through Add’s and Subtract’s
4–3 Propagating Bounds through Logical Operations
CHAPTER 5. COUNTING BITS
5–1 Counting 1-Bits
5–2 Parity
5–3 Counting Leading 0’s
5–4 Counting Trailing 0’s
CHAPTER 6. SEARCHING WORDS
6–1 Find First 0-Byte
6–2 Find First String of 1-Bits of a Given Length
6–3 Find Longest String of 1-Bits
6–4 Find Shortest String of 1-Bits
CHAPTER 7. REARRANGING BITS AND BYTES
7–1 Reversing Bits and Bytes
7–2 Shuffling Bits
7–3 Transposing a Bit Matrix
7–4 Compress, or Generalized Extract
7–5 Expand, or Generalized Insert
7–6 Hardware Algorithms for Compress and Expand
7–7 General Permutations, Sheep and Goats Operation
7–8 Rearrangements and Index Transformations
7–9 An LRU Algorithm
CHAPTER 8. MULTIPLICATION
8–1 Multiword Multiplication
8–2 High-Order Half of 64-Bit Product
8–3 High-Order Product Signed from/to Unsigned
8–4 Multiplication by Constants
CHAPTER 9. INTEGER DIVISION
9–1 Preliminaries
9–2 Multiword Division
9–3 Unsigned Short Division from Signed Division
9–4 Unsigned Long Division
9–5 Doubleword Division from Long Division
CHAPTER 10. INTEGER DIVISION BY CONSTANTS
10–1 Signed Division by a Known Power of 2
10–2 Signed Remainder from Division by a Known Power of 2
10–3 Signed Division and Remainder by Non-Powers of 2
10–4 Signed Division by Divisors ≥ 2
10–5 Signed Division by Divisors ≤ –2
10–6 Incorporation into a Compiler
10–7 Miscellaneous Topics
10–8 Unsigned Division
10–9 Unsigned Division by Divisors ≥ 1
10–10 Incorporation into a Compiler (Unsigned)
10–11 Miscellaneous Topics (Unsigned)
10–12 Applicability to Modulus and Floor Division
10–13 Similar Methods
10–14 Sample Magic Numbers
10–15 Simple Code in Python
10–16 Exact Division by Constants
10–17 Test for Zero Remainder after Division by a Constant
10–18 Methods Not Using Multiply High
10–19 Remainder by Summing Digits
10–20 Remainder by Multiplication and Shifting Right
10–21 Converting to Exact Division
10–22 A Timing Test
10–23 A Circuit for Dividing by 3
CHAPTER 11. SOME ELEMENTARY FUNCTIONS
11–1 Integer Square Root
11–2 Integer Cube Root
11–3 Integer Exponentiation
11–4 Integer Logarithm
CHAPTER 12. UNUSUAL BASES FOR NUMBER SYSTEMS
12–1 Base –2
12–2 Base –1 + i
12–3 Other Bases
12–4 What Is the Most Efficient Base?
CHAPTER 13. GRAY CODE
13–1 Gray Code
13–2 Incrementing a Gray-Coded Integer
13–3 Negabinary Gray Code
13–4 Brief History and Applications
CHAPTER 14. CYCLIC REDUNDANCY CHECK
14–1 Introduction
14–2 Theory
14–3 Practice
CHAPTER 15. ERROR-CORRECTING CODES
15–1 Introduction
15–2 The Hamming Code
15–3 Software for SEC-DED on 32 Information Bits
15–4 Error Correction Considered More Generally
CHAPTER 16. HILBERT’S CURVE
16–1 A Recursive Algorithm for Generating the Hilbert Curve
16–2 Coordinates from Distance along the Hilbert Curve
16–3 Distance from Coordinates on the Hilbert Curve
16–4 Incrementing the Coordinates on the Hilbert Curve
16–5 Non-Recursive Generating Algorithms
16–6 Other Space-Filling Curves
16–7 Applications
CHAPTER 17. FLOATING-POINT
17–1 IEEE Format
17–2 Floating-Point To/From Integer Conversions
17–3 Comparing Floating-Point Numbers Using Integer Operations
17–4 An Approximate Reciprocal Square Root Routine
17–5 The Distribution of Leading Digits
17–6 Table of Miscellaneous Values
CHAPTER 18. FORMULAS FOR PRIMES
18–1 Introduction
18–2 Willans’s Formulas
18–3 Wormell’s Formula
18–4 Formulas for Other Difficult Functions
ANSWERS TO EXERCISES
APPENDIX A. ARITHMETIC TABLES FOR A 4-BIT MACHINE
APPENDIX B. NEWTON’S METHOD
APPENDIX C. A GALLERY OF GRAPHS OF DISCRETE FUNCTIONS
C–1 Plots of Logical Operations on Integers
C–2 Plots of Addition, Subtraction, and Multiplication
C–3 Plots of Functions Involving Division
C–4 Plots of the Compress, SAG, and Rotate Left Functions
C–5 2D Plots of Some Unary Functions
Опубликовано: Пётр Соболев
3C

Комментарии (3):
14 февраля 2016, 03:33 Peter Sobolev: Ещё из той же серии:
ссылкаseander/bithacks.html
14 февраля 2016, 03:52 Eugene Bogorad: трудно было переложить файл на какой-нибудь диск? :)
14 февраля 2016, 03:55 Peter Sobolev: Возьми да купи на Амазоне, с комфортом
Эта заметка и комментарии к ней в Facebook: ссылка
(возможно, в Facebook она не будет вам доступна - видимость ограничена)

Случайная заметка

1081 день назад, 16:202 ноября 2015 Соприкоснулся тут с IndexedDB (это такая нереляционная база данных на стороне браузера) и теперь понимаю, почему всё так печально с оффлайновыми веб приложениями. В 2009 году IndexedDB предложили на замену WebSQL (что поставило на WebSQL крест, ну и ладно - я даже соглашусь). В 2011 и 2012-м IndexedDB кое-как реализовали в FireFox и Chrome (в процессе они ещё не ...далее

Избранное

531 день назад, 01:575 мая 2017 Часть 1: От четырёх до восьми Я люблю читать воспоминания людей, заставших первые шаги вычислительной техники в их стране. В них всегда есть какая-то романтика, причём какого она рода — сильно зависит от того, с каких компьютеров люди начали. Обычно это определяется обстоятельствами — местом работы, учёбы, а иногда и вовсе — ...далее

43 дня назад, 20:305 сентября 2018 "Finally, we come to the instruction we've all been waiting for – SEX!" / из статьи про микропроцессор CDP1802 / В начале 1970-х в США были весьма популярны простые электронные игры типа Pong (в СССР их аналоги появились в продаже через 5-10 лет). Как правило, такие игры не имели микропроцессора и памяти в современном понимании этих слов, а строились на жёсткой ...далее