diff --git a/cmuratori/hero/code/code440.hmml b/cmuratori/hero/code/code440.hmml index e0de613..a66e950 100644 --- a/cmuratori/hero/code/code440.hmml +++ b/cmuratori/hero/code/code440.hmml @@ -1,17 +1,26 @@ [video member=cmuratori stream_platform=twitch stream_username=handmade_hero project=code medium=speech title="Introduction to Function Approximation with Andrew Bromage" vod_platform=youtube id=0b68cEY2wKs guest=Pseudonym73 annotator=Miblo] [0:00][Welcome to a special episode with [@Pseudonym73 Andrew Bromage]] -[2:42][@Pseudonym73][How floating point numbers are represented by a computer] +[2:42][@Pseudonym73][How floating point numbers are represented by a computer[ref + publisher=IEEE + title="754-2008 - IEEE Standard for Floating-Point Arithmetic" + url=http://ieeexplore.ieee.org/servlet/opac?punumber=4610933]] [4:36][@Pseudonym73][Scientific notation, and how IEEE 754 represents numbers in binary][:mathematics :"numeral system"] [7:14][Get [@Pseudonym73 Andrew] back][:admin] [9:27][@Pseudonym73][Return] -[10:36][@Pseudonym73][Continuing IEEE 754's representation of floating point numbers[ref +[10:36][@Pseudonym73][Continuing IEEE 754's[ref + publisher=IEEE + title="754-2008 - IEEE Standard for Floating-Point Arithmetic" + url=http://ieeexplore.ieee.org/servlet/opac?punumber=4610933] representation of floating point numbers[ref site="Float Toy" url=http://evanw.github.io/float-toy/]][:mathematics :"numeral system"] [16:20][@Pseudonym73][Subnormal numbers, the special-case numbers infinity, quiet NaN and signaling NaN, and the quality of being "algebraically closed"][:mathematics :"numeral system"] [24:10][@Pseudonym73][Any questions?] [24:35][Is it just a peculiarity of binary as a number system, that you can skip encoding the leading digit?][:mathematics :"numeral system"] [26:06][@desuused][Q: Is there a representation for underflowing numbers?][:mathematics :"numeral system"] -[27:28][@Pseudonym73][Note the binary and decimal representations of floating point numbers in the IEEE 754 standard][:mathematics :"numeral system"] +[27:28][@Pseudonym73][Note the binary and decimal representations of floating point numbers in the IEEE 754 standard[ref + publisher=IEEE + title="754-2008 - IEEE Standard for Floating-Point Arithmetic" + url=http://ieeexplore.ieee.org/servlet/opac?punumber=4610933]][:mathematics :"numeral system"] [27:51][@Pseudonym73][Constants definitions in handmade_numerics.h][:mathematics :"numeral system" :research] [30:22][@Pseudonym73][Constants definitions in C's float.h[ref site=Wikibooks @@ -25,9 +34,15 @@ url=https://msdn.microsoft.com/en-us/library/w1xfschh.aspx] with an example of its use in a sqrt() function][:mathematics :"numeral system" :research] [47:36][When multiplying a subnormal number by a power of two, does the floating point unit first shift the numbers into the normal range before incrementing the exponent?][:mathematics :"numeral system"] [50:38][@Pseudonym73][Describe ScaleByExponent()][:mathematics :"numeral system" :research] -[53:58][@Pseudonym73][Note the differing range of absolute values of the mantissa in text books (as used in handmade_numerics.h) and the CRT's frexp()][:mathematics :"numeral system" :research] +[53:58][@Pseudonym73][Note the differing range of absolute values of the mantissa in text books (as used in handmade_numerics.h) and the CRT's frexp()[ref + site=MSDN + page=frexp + url=https://msdn.microsoft.com/en-us/library/w1xfschh.aspx]][:mathematics :"numeral system" :research] [57:01][@Pseudonym73][Quote James H. Wilkinson on the state of computer arithmetic in 1971][:mathematics :"numeral system"] -[58:30][@Pseudonym73][Describe SlowDivision(), with emphasis on the sheer amount of specification compliance it contains][:mathematics :research] +[58:30][@Pseudonym73][Describe SlowDivision(), with emphasis on the sheer amount of specification compliance it contains[ref + publisher=IEEE + title="754-2008 - IEEE Standard for Floating-Point Arithmetic" + url=http://ieeexplore.ieee.org/servlet/opac?punumber=4610933]][:mathematics :research] [1:06:29][@Pseudonym73][Walk through an example of SlowDivision(), noting why it uses 11 bits of precision in its application of Horner's rule[ref site=Wikipedia page="Horner's method" @@ -63,10 +78,13 @@ [1:56:43][@gg_nate][Can you set video / audio bit rate on hangouts? If he could lower the bit rate of the video the audio might work better] [1:56:57][@Pseudonym73][Describe SinCos_TableVersion()][:mathematics :research] [1:58:31][@Pseudonym73][Deriving trigonometric identities][:mathematics] -[2:02:28][@Pseudonym73][Calculating cosine around "a" branch-free][:mathematics] +[2:02:28][@Pseudonym73][Calculating cosine around "a", branch-free][:mathematics] [2:04:00][@Pseudonym73][Point out the experimental SinCos_QuadrantVersion() for SIMD sines and cosines][:mathematics :optimisation :research] [2:05:54][@Pseudonym73][Describe the XSinCosX table look up][:mathematics :research] -[2:07:56][@Pseudonym73][Counting has always started at zero][:mathematics :"numeral system" :research] +[2:07:56][@Pseudonym73][Counting has always started at zero[ref + author="Philip Wadler" + title="As Natural as 0, 1, 2" + url=https://homepages.inf.ed.ac.uk/wadler/papers/natural/natural.pdf]][:mathematics :"numeral system" :research] [2:08:47][@Pseudonym73][Continued description of the XSinCosX table look up][:mathematics :research] [2:10:38][@Pseudonym73][:Run calculate_sincos_tables and explain the result for .5][:mathematics] [2:12:10][@Pseudonym73][Describe how FindSinCosAround() searches adjacent floating point numbers][:mathematics :research]