home *** CD-ROM | disk | FTP | other *** search
/ Compendium Deluxe 1 / LSD Compendium Deluxe 1.iso / a / programming / assembly / cordic.lha / cordic3.code < prev    next >
Mailbox/MIME Entity  |  1989-10-24  |  3.2 KB

open in: MacOS 8.1     |     Win98     |     DOS

view JSON data     |     view as text

This file was processed as: Mailbox/MIME Entity (archive/mbox).

You can browse this item here: cordic3.code

ConfidenceProgramDetectionMatch TypeSupport
100% dexvert Mailbox/MIME Entity (archive/mbox) magic Supported
100% dexvert Internet Message Format (text/imf) magic Supported
1% dexvert Text File (text/txt) fallback Supported
100% file Mailbox text, 1st line "From paul@torch.UUCP Tue May 31 09:30:22 1988", ASCII text default
100% TrID E-Mail message (Var. 2) default
100% checkBytes Printable ASCII default
100% perlTextCheck Likely Text (Perl) default
100% siegfried x-fmt/111 Plain Text File default
100% detectItEasy Format: plain text[LF] default (weak)
100% xdgMime application/mbox default



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 46 72 6f 6d 20 70 61 75 | 6c 40 74 6f 72 63 68 2e |From pau|l@torch.|
|00000010| 55 55 43 50 20 54 75 65 | 20 4d 61 79 20 33 31 20 |UUCP Tue| May 31 |
|00000020| 30 39 3a 33 30 3a 32 32 | 20 31 39 38 38 0a 50 61 |09:30:22| 1988.Pa|
|00000030| 74 68 3a 20 62 65 6f 77 | 75 6c 66 21 73 74 65 69 |th: beow|ulf!stei|
|00000040| 6e 6d 65 74 7a 21 75 75 | 6e 65 74 21 6d 63 76 61 |nmetz!uu|net!mcva|
|00000050| 78 21 75 6b 63 21 73 74 | 63 21 64 61 74 6c 6f 67 |x!ukc!st|c!datlog|
|00000060| 21 74 6f 72 63 68 21 70 | 61 75 6c 0a 46 72 6f 6d |!torch!p|aul.From|
|00000070| 3a 20 70 61 75 6c 40 74 | 6f 72 63 68 2e 63 6f 2e |: paul@t|orch.co.|
|00000080| 75 6b 20 28 50 61 75 6c | 20 41 6e 64 72 65 77 73 |uk (Paul| Andrews|
|00000090| 29 0a 4e 65 77 73 67 72 | 6f 75 70 73 3a 20 63 6f |).Newsgr|oups: co|
|000000a0| 6d 70 2e 67 72 61 70 68 | 69 63 73 0a 53 75 62 6a |mp.graph|ics.Subj|
|000000b0| 65 63 74 3a 20 52 65 3a | 20 52 65 71 75 65 73 74 |ect: Re:| Request|
|000000c0| 20 66 6f 72 20 43 4f 52 | 44 49 43 20 61 6c 67 6f | for COR|DIC algo|
|000000d0| 72 69 74 68 6d 20 69 6e | 66 6f 0a 4d 65 73 73 61 |rithm in|fo.Messa|
|000000e0| 67 65 2d 49 44 3a 20 3c | 31 39 38 40 74 6f 72 63 |ge-ID: <|198@torc|
|000000f0| 68 2e 63 6f 2e 75 6b 3e | 0a 44 61 74 65 3a 20 33 |h.co.uk>|.Date: 3|
|00000100| 31 20 4d 61 79 20 38 38 | 20 31 33 3a 33 30 3a 32 |1 May 88| 13:30:2|
|00000110| 32 20 47 4d 54 0a 52 65 | 66 65 72 65 6e 63 65 73 |2 GMT.Re|ferences|
|00000120| 3a 20 3c 33 35 34 40 61 | 62 76 61 78 2e 55 55 43 |: <354@a|bvax.UUC|
|00000130| 50 3e 0a 52 65 70 6c 79 | 2d 54 6f 3a 20 70 61 75 |P>.Reply|-To: pau|
|00000140| 6c 40 74 6f 72 63 68 2e | 55 55 43 50 20 28 50 61 |l@torch.|UUCP (Pa|
|00000150| 75 6c 20 41 6e 64 72 65 | 77 73 29 0a 4f 72 67 61 |ul Andre|ws).Orga|
|00000160| 6e 69 7a 61 74 69 6f 6e | 3a 20 54 4f 52 43 48 20 |nization|: TORCH |
|00000170| 43 6f 6d 70 75 74 65 72 | 73 20 4c 74 64 2e 2c 20 |Computer|s Ltd., |
|00000180| 43 61 6d 62 72 69 64 67 | 65 2c 20 55 6e 69 74 65 |Cambridg|e, Unite|
|00000190| 64 20 4b 69 6e 67 64 6f | 6d 0a 4c 69 6e 65 73 3a |d Kingdo|m.Lines:|
|000001a0| 20 38 36 0a 0a 49 6e 20 | 61 72 74 69 63 6c 65 20 | 86..In |article |
|000001b0| 3c 33 35 34 40 61 62 76 | 61 78 2e 55 55 43 50 3e |<354@abv|ax.UUCP>|
|000001c0| 20 67 66 73 40 61 62 76 | 61 78 2e 55 55 43 50 20 | gfs@abv|ax.UUCP |
|000001d0| 28 47 72 65 67 20 46 2e | 20 53 68 61 79 29 20 77 |(Greg F.| Shay) w|
|000001e0| 72 69 74 65 73 3a 0a 3e | 4f 6b 2c 20 49 27 6d 20 |rites:.>|Ok, I'm |
|000001f0| 69 6e 74 65 72 65 73 74 | 65 64 2e 20 20 49 6e 20 |interest|ed. In |
|00000200| 72 65 70 6c 79 20 74 6f | 20 6d 79 20 73 69 6e 28 |reply to| my sin(|
|00000210| 78 29 20 69 6e 20 69 6e | 74 65 67 65 72 20 70 6f |x) in in|teger po|
|00000220| 73 74 69 6e 67 2c 20 61 | 20 63 6f 75 70 6c 65 0a |sting, a| couple.|
|00000230| 3e 09 43 6f 75 6c 64 20 | 73 6f 6d 65 6f 6e 65 20 |>.Could |someone |
|00000240| 65 69 74 68 65 72 20 74 | 68 75 6d 62 6e 61 69 6c |either t|humbnail|
|00000250| 20 73 6b 65 74 63 68 20 | 74 68 65 20 43 4f 52 44 | sketch |the CORD|
|00000260| 49 43 20 61 6c 67 6f 72 | 69 74 68 6d 20 66 6f 72 |IC algor|ithm for|
|00000270| 20 6d 65 0a 3e 6f 72 20 | 67 69 76 65 20 61 20 72 | me.>or |give a r|
|00000280| 65 66 65 72 65 6e 63 65 | 3f 20 20 4d 61 6e 79 20 |eference|? Many |
|00000290| 54 68 61 6e 6b 73 2e 0a | 3e 0a 3e 09 09 47 72 65 |Thanks..|>.>..Gre|
|000002a0| 67 20 53 68 61 79 0a 3e | 2e 2e 2e 0a 0a 49 20 6c |g Shay.>|.....I l|
|000002b0| 6f 6f 6b 65 64 20 74 68 | 72 6f 75 67 68 20 6d 79 |ooked th|rough my|
|000002c0| 20 72 65 66 65 72 65 6e | 63 65 73 20 61 6e 64 20 | referen|ces and |
|000002d0| 64 69 73 63 6f 76 65 72 | 65 64 20 74 68 61 74 20 |discover|ed that |
|000002e0| 74 68 65 79 20 77 65 72 | 65 20 66 61 69 72 6c 79 |they wer|e fairly|
|000002f0| 20 75 73 65 6c 65 73 73 | 2e 0a 49 6e 73 74 65 61 | useless|..Instea|
|00000300| 64 2c 20 68 65 72 65 27 | 73 20 73 6f 6d 65 20 73 |d, here'|s some s|
|00000310| 6f 75 72 63 65 20 74 68 | 61 74 20 64 6f 65 73 20 |ource th|at does |
|00000320| 4f 4e 45 20 6f 66 20 74 | 68 65 20 43 4f 52 44 49 |ONE of t|he CORDI|
|00000330| 43 20 74 72 61 6e 73 66 | 6f 72 6d 61 74 69 6f 6e |C transf|ormation|
|00000340| 73 0a 69 2e 65 2e 20 74 | 68 65 20 6f 72 69 67 69 |s.i.e. t|he origi|
|00000350| 6e 61 6c 20 6f 6e 65 2c | 20 74 68 65 20 63 6f 6f |nal one,| the coo|
|00000360| 72 64 69 6e 61 74 65 20 | 72 6f 74 61 74 69 6f 6e |rdinate |rotation|
|00000370| 2e 20 4e 6f 74 65 20 74 | 68 61 74 20 74 68 65 20 |. Note t|hat the |
|00000380| 73 61 6d 65 20 6d 65 74 | 68 6f 64 0a 67 65 6e 65 |same met|hod.gene|
|00000390| 72 61 6c 69 73 65 73 20 | 74 6f 20 64 6f 20 74 68 |ralises |to do th|
|000003a0| 65 20 66 6f 6c 6c 6f 77 | 69 6e 67 20 74 72 61 6e |e follow|ing tran|
|000003b0| 73 66 6f 72 6d 61 74 69 | 6f 6e 73 20 61 6c 73 6f |sformati|ons also|
|000003c0| 3a 0a 0a 73 69 6e 2c 20 | 63 6f 73 2c 20 74 61 6e |:..sin, |cos, tan|
|000003d0| 2c 20 61 74 61 6e 2c 20 | 73 69 6e 68 2c 20 63 6f |, atan, |sinh, co|
|000003e0| 73 68 2c 20 74 61 6e 68 | 2c 20 61 74 61 6e 68 2c |sh, tanh|, atanh,|
|000003f0| 20 65 78 70 2c 20 6c 6e | 2c 20 72 6f 6f 74 2e 0a | exp, ln|, root..|
|00000400| 0a 54 68 65 20 61 75 74 | 68 6f 72 20 6f 66 20 74 |.The aut|hor of t|
|00000410| 68 65 20 62 65 73 74 20 | 70 61 70 65 72 20 49 20 |he best |paper I |
|00000420| 6b 6e 6f 77 20 6f 6e 20 | 74 68 69 73 20 69 73 20 |know on |this is |
|00000430| 4a 2e 53 2e 57 61 6c 74 | 68 65 72 2c 20 75 6e 66 |J.S.Walt|her, unf|
|00000440| 6f 72 74 75 6e 61 74 65 | 6c 79 0a 49 20 63 61 6e |ortunate|ly.I can|
|00000450| 27 74 20 67 69 76 65 20 | 79 6f 75 20 74 68 65 20 |'t give |you the |
|00000460| 72 65 66 65 72 65 6e 63 | 65 2e 0a 0a 49 20 77 6f |referenc|e...I wo|
|00000470| 75 6c 64 27 76 65 20 6d | 61 69 6c 65 64 20 74 68 |uld've m|ailed th|
|00000480| 69 73 20 62 75 74 20 77 | 65 27 76 65 20 79 65 74 |is but w|e've yet|
|00000490| 20 74 6f 20 73 6f 72 74 | 20 6f 75 72 20 6d 61 69 | to sort| our mai|
|000004a0| 6c 20 6f 75 74 2e 2e 2e | 0a 0a 2d 20 50 61 75 6c |l out...|..- Paul|
|000004b0| 2e 0a 0a 2d 2d 2d 2d 2d | 2d 2d 2d 20 43 75 74 20 |...-----|--- Cut |
|000004c0| 68 65 72 65 20 2d 2d 2d | 2d 2d 2d 2d 2d 2d 0a 0a |here ---|------..|
|000004d0| 2f 2a 20 2d 2d 2d 2d 2d | 2d 2d 46 6f 72 77 61 72 |/* -----|--Forwar|
|000004e0| 64 20 64 65 63 6c 61 72 | 61 74 69 6f 6e 73 2d 2d |d declar|ations--|
|000004f0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000500| 2d 2d 2d 2d 2d 2a 2f 0a | 0a 2f 2a 20 2d 2d 2d 2d |-----*/.|./* ----|
|00000510| 2d 2d 2d 43 6f 6e 73 74 | 61 6e 74 73 20 61 6e 64 |---Const|ants and|
|00000520| 20 6d 61 63 72 6f 73 2d | 2d 2d 2d 2d 2d 2d 2d 2d | macros-|--------|
|00000530| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2a 2f |--------|------*/|
|00000540| 0a 0a 23 64 65 66 69 6e | 65 20 4b 52 20 20 20 31 |..#defin|e KR 1|
|00000550| 30 37 39 32 32 20 20 20 | 20 20 20 2f 2a 20 63 6f |07922 | /* co|
|00000560| 6e 73 74 61 6e 74 20 2a | 2f 0a 0a 2f 2a 20 2d 2d |nstant *|/../* --|
|00000570| 2d 2d 2d 2d 2d 45 78 70 | 6f 72 74 65 64 20 76 61 |-----Exp|orted va|
|00000580| 72 69 61 62 6c 65 73 2f | 66 75 6e 63 74 69 6f 6e |riables/|function|
|00000590| 73 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |s-------|--------|
|000005a0| 2a 2f 0a 0a 2f 2a 20 2d | 2d 2d 2d 2d 2d 2d 49 6d |*/../* -|------Im|
|000005b0| 70 6f 72 74 65 64 20 76 | 61 72 69 61 62 6c 65 73 |ported v|ariables|
|000005c0| 2f 66 75 6e 63 74 69 6f | 6e 73 2d 2d 2d 2d 2d 2d |/functio|ns------|
|000005d0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2a 2f 0a 0a 2f 2a 20 |--------|-*/../* |
|000005e0| 2d 2d 2d 2d 2d 2d 2d 53 | 74 61 74 69 63 20 76 61 |-------S|tatic va|
|000005f0| 72 69 61 62 6c 65 73 2d | 2d 2d 2d 2d 2d 2d 2d 2d |riables-|--------|
|00000600| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000610| 2d 2d 2a 2f 0a 0a 73 74 | 61 74 69 63 20 69 6e 74 |--*/..st|atic int|
|00000620| 20 61 72 63 74 61 6e 20 | 5b 5d 20 3d 20 20 2f 2a | arctan |[] = /*|
|00000630| 20 54 61 62 6c 65 20 6f | 66 20 61 74 61 6e 73 20 | Table o|f atans |
|00000640| 69 6e 20 64 65 67 72 65 | 65 73 20 3c 3c 20 31 36 |in degre|es << 16|
|00000650| 20 2a 2f 0a 7b 0a 20 20 | 20 32 39 34 39 31 32 30 | */.{. | 2949120|
|00000660| 2c 20 31 37 34 30 39 36 | 37 2c 20 39 31 39 38 37 |, 174096|7, 91987|
|00000670| 39 2c 20 34 36 36 39 34 | 35 2c 0a 20 20 20 32 33 |9, 46694|5,. 23|
|00000680| 34 33 37 38 2c 20 31 31 | 37 33 30 33 2c 20 35 38 |4378, 11|7303, 58|
|00000690| 36 36 36 2c 20 32 39 33 | 33 35 2c 0a 20 20 20 31 |666, 293|35,. 1|
|000006a0| 34 36 36 38 2c 20 37 33 | 33 34 2c 20 33 36 36 37 |4668, 73|34, 3667|
|000006b0| 2c 20 31 38 33 33 2c 0a | 20 20 20 39 31 38 2c 20 |, 1833,.| 918, |
|000006c0| 34 35 38 2c 20 32 32 39 | 2c 20 31 31 35 0a 7d 3b |458, 229|, 115.};|
|000006d0| 0a 0a 2f 2a 20 20 20 20 | 20 20 20 20 20 20 20 20 |../* | |
|000006e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000006f0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000700| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000710| 20 20 20 20 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a | ****|********|
|00000720| 2a 0a 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |*. | |
|00000730| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000740| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000750| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000760| 20 20 20 20 2a 20 20 20 | 20 20 20 20 20 20 20 20 | * | |
|00000770| 2a 0a 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |*. | |
|00000780| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000790| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000007a0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000007b0| 20 20 20 20 2a 20 20 43 | 4f 52 44 49 43 20 20 20 | * C|ORDIC |
|000007c0| 2a 0a 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |*. | |
|000007d0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000007e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000007f0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000800| 20 20 20 20 2a 20 20 20 | 20 20 20 20 20 20 20 20 | * | |
|00000810| 2a 0a 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |*. | |
|00000820| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000830| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000840| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000850| 20 20 20 20 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a | ****|********|
|00000860| 2a 0a 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |*.------|--------|
|00000870| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000880| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000890| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000008a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000008b0| 2d 0a 7c 20 50 65 72 66 | 6f 72 6d 20 61 20 63 6f |-.| Perf|orm a co|
|000008c0| 72 64 69 63 20 74 72 61 | 6e 73 66 6f 72 6d 61 74 |rdic tra|nsformat|
|000008d0| 69 6f 6e 20 6f 6e 20 74 | 68 65 20 61 72 67 75 6d |ion on t|he argum|
|000008e0| 65 6e 74 73 20 20 20 20 | 20 20 20 20 20 20 20 20 |ents | |
|000008f0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000900| 7c 0a 7c 20 54 68 65 20 | 76 61 6c 75 65 20 72 65 ||.| The |value re|
|00000910| 74 75 72 6e 65 64 20 69 | 73 20 62 2a 63 6f 73 28 |turned i|s b*cos(|
|00000920| 74 68 65 74 61 29 20 2b | 20 61 2a 73 69 6e 28 74 |theta) +| a*sin(t|
|00000930| 68 65 74 61 29 2e 20 20 | 20 20 20 20 20 20 20 20 |heta). | |
|00000940| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00000950| 7c 0a 7c 20 74 68 65 74 | 61 20 69 73 20 61 6e 20 ||.| thet|a is an |
|00000960| 61 6e 67 6c 65 20 69 6e | 20 74 68 65 20 72 61 6e |angle in| the ran|
|00000970| 67 65 20 30 20 2d 20 39 | 30 20 64 65 67 72 65 65 |ge 0 - 9|0 degree|
|00000980| 73 2e 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |s. | |
|00000990| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000009a0| 7c 0a 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d ||.------|--------|
|000009b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000009c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000009d0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000009e0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000009f0| 2d 0a 2a 2f 0a 43 6f 72 | 64 69 63 28 61 2c 20 62 |-.*/.Cor|dic(a, b|
|00000a00| 2c 20 74 68 65 74 61 29 | 0a 72 65 67 69 73 74 65 |, theta)|.registe|
|00000a10| 72 20 69 6e 74 20 61 2c | 20 62 2c 20 74 68 65 74 |r int a,| b, thet|
|00000a20| 61 3b 0a 7b 0a 20 20 20 | 72 65 67 69 73 74 65 72 |a;.{. |register|
|00000a30| 20 69 6e 74 20 6f 6c 64 | 61 2c 20 69 3b 0a 0a 20 | int old|a, i;.. |
|00000a40| 20 20 61 20 3c 3c 3d 20 | 38 3b 0a 20 20 20 62 20 | a <<= |8;. b |
|00000a50| 3c 3c 3d 20 38 3b 0a 20 | 20 20 74 68 65 74 61 20 |<<= 8;. | theta |
|00000a60| 3c 3c 3d 20 31 36 3b 0a | 20 20 20 66 6f 72 20 28 |<<= 16;.| for (|
|00000a70| 69 20 3d 20 30 3b 20 69 | 20 3c 20 31 36 3b 20 69 |i = 0; i| < 16; i|
|00000a80| 2b 2b 29 20 20 20 2f 2a | 20 64 6f 20 74 68 69 73 |++) /*| do this|
|00000a90| 20 74 6f 20 31 36 20 62 | 69 74 73 20 2a 2f 0a 20 | to 16 b|its */. |
|00000aa0| 20 20 7b 0a 20 20 20 20 | 20 20 6f 6c 64 61 20 3d | {. | olda =|
|00000ab0| 20 61 20 3e 3e 20 69 3b | 0a 20 20 20 20 20 20 69 | a >> i;|. i|
|00000ac0| 66 20 28 74 68 65 74 61 | 20 3c 20 30 29 0a 20 20 |f (theta| < 0). |
|00000ad0| 20 20 20 20 7b 0a 20 20 | 20 20 20 20 20 20 20 61 | {. | a|
|00000ae0| 20 2b 3d 20 28 62 20 3e | 3e 20 69 29 3b 0a 20 20 | += (b >|> i);. |
|00000af0| 20 20 20 20 20 20 20 62 | 20 2d 3d 20 6f 6c 64 61 | b| -= olda|
|00000b00| 3b 0a 20 20 20 20 20 20 | 20 20 20 74 68 65 74 61 |;. | theta|
|00000b10| 20 2b 3d 20 61 72 63 74 | 61 6e 20 5b 69 5d 3b 0a | += arct|an [i];.|
|00000b20| 20 20 20 20 20 20 7d 0a | 20 20 20 20 20 20 65 6c | }.| el|
|00000b30| 73 65 20 0a 20 20 20 20 | 20 20 7b 0a 20 20 20 20 |se . | {. |
|00000b40| 20 20 20 20 20 61 20 2d | 3d 20 28 62 20 3e 3e 20 | a -|= (b >> |
|00000b50| 69 29 3b 0a 20 20 20 20 | 20 20 20 20 20 62 20 2b |i);. | b +|
|00000b60| 3d 20 6f 6c 64 61 3b 0a | 20 20 20 20 20 20 20 20 |= olda;.| |
|00000b70| 20 74 68 65 74 61 20 2d | 3d 20 61 72 63 74 61 6e | theta -|= arctan|
|00000b80| 20 5b 69 5d 3b 0a 20 20 | 20 20 20 20 7d 0a 20 20 | [i];. | }. |
|00000b90| 20 7d 0a 20 20 20 20 20 | 20 2f 2a 20 54 68 65 20 | }. | /* The |
|00000ba0| 76 61 6c 75 65 20 72 65 | 74 75 72 6e 65 64 20 69 |value re|turned i|
|00000bb0| 73 20 62 2a 63 6f 73 28 | 74 68 65 74 61 29 20 2b |s b*cos(|theta) +|
|00000bc0| 20 61 2a 73 69 6e 28 74 | 68 65 74 61 29 20 2a 2f | a*sin(t|heta) */|
|00000bd0| 0a 20 20 20 20 20 20 2f | 2a 20 61 2a 73 69 6e 28 |. /|* a*sin(|
|00000be0| 74 68 65 74 61 29 20 69 | 66 20 69 6e 69 74 69 61 |theta) i|f initia|
|00000bf0| 6c 20 62 20 77 61 73 20 | 30 20 2a 2f 0a 20 20 20 |l b was |0 */. |
|00000c00| 20 20 20 2f 2a 20 62 2a | 63 6f 73 28 74 68 65 74 | /* b*|cos(thet|
|00000c10| 61 29 20 69 66 20 69 6e | 69 74 69 61 6c 20 61 20 |a) if in|itial a |
|00000c20| 77 61 73 20 30 20 2a 2f | 0a 20 20 20 72 65 74 75 |was 0 */|. retu|
|00000c30| 72 6e 20 28 28 62 20 3c | 3c 20 38 29 20 2f 20 4b |rn ((b <|< 8) / K|
|00000c40| 52 29 3b 0a 20 20 20 20 | 20 20 2f 2a 20 57 65 20 |R);. | /* We |
|00000c50| 61 72 65 20 74 68 72 6f | 77 69 6e 67 20 61 20 61 |are thro|wing a a|
|00000c60| 77 61 79 2c 20 74 68 6f | 75 67 68 20 69 74 20 63 |way, tho|ugh it c|
|00000c70| 6f 6e 74 61 69 6e 73 20 | 3a 20 2a 2f 0a 20 20 20 |ontains |: */. |
|00000c80| 20 20 20 2f 2a 20 61 2a | 63 6f 73 28 74 68 65 74 | /* a*|cos(thet|
|00000c90| 61 29 20 2d 20 62 2a 73 | 69 6e 28 74 68 65 74 61 |a) - b*s|in(theta|
|00000ca0| 29 20 2a 2f 0a 7d 0a 0a | 0a |) */.}..|. |
+--------+-------------------------+-------------------------+--------+--------+