Rev 7615 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 7615 | Rev 7616 | ||
---|---|---|---|
Line 3... | Line 3... | ||
3 | ; |
3 | ; |
Line 4... | Line 4... | ||
4 | 4 | ||
5 | ; ®«¨ç¥á⢮ § ª®¢ ç¨á« ¯®á«¥ § ¯ï⮩ (1-17) |
5 | ; ®«¨ç¥á⢮ § ª®¢ ç¨á« ¯®á«¥ § ¯ï⮩ (1-17) |
6 | NumberSymbolsAD DW 5 |
6 | NumberSymbolsAD DW 5 |
7 | ; ®áâ âë (10 ¢ á⥯¥¨ N) |
7 | ; ®áâ âë (10 ¢ á⥯¥¨ N) |
8 | MConst DQ 1.0E1,1.0E2,1.0E3,1.0E4,1.0E5 |
8 | MConst: DQ 1.0E1,1.0E2,1.0E3,1.0E4,1.0E5 |
9 | DQ 1.0E6,1.0E7,1.0E8,1.0E9,1.0E10 |
9 | DQ 1.0E6,1.0E7,1.0E8,1.0E9,1.0E10 |
10 | DQ 1.0E11,1.0E12,1.0E13,1.0E14,1.0E15 |
10 | DQ 1.0E11,1.0E12,1.0E13,1.0E14,1.0E15 |
11 | DQ 1.0E16,1.0E17,1.0E18,1.0E19,1.0E20 |
11 | DQ 1.0E16,1.0E17,1.0E18,1.0E19,1.0E20 |
12 | DQ 1.0E21,1.0E22,1.0E23,1.0E24,1.0E25 |
12 | DQ 1.0E21,1.0E22,1.0E23,1.0E24,1.0E25 |
Line 29... | Line 29... | ||
29 | DQ 1.0E106,1.0E107,1.0E108,1.0E109,1.0E110 |
29 | DQ 1.0E106,1.0E107,1.0E108,1.0E109,1.0E110 |
30 | DQ 1.0E111,1.0E112,1.0E113,1.0E114,1.0E115 |
30 | DQ 1.0E111,1.0E112,1.0E113,1.0E114,1.0E115 |
31 | DQ 1.0E116,1.0E117,1.0E118,1.0E119,1.0E120 |
31 | DQ 1.0E116,1.0E117,1.0E118,1.0E119,1.0E120 |
32 | DQ 1.0E121,1.0E122,1.0E123,1.0E124,1.0E125 |
32 | DQ 1.0E121,1.0E122,1.0E123,1.0E124,1.0E125 |
33 | DQ 1.0E126,1.0E127,1.0E128 |
33 | DQ 1.0E126,1.0E127,1.0E128 |
- | 34 | .end: |
|
34 | ; ¨á«® á ¯« ¢ î饩 § ¯ï⮩ ¤¢®©®© â®ç®á⨠|
35 | ; ¨á«® á ¯« ¢ î饩 § ¯ï⮩ ¤¢®©®© â®ç®á⨠|
35 | Data_Double DQ ? |
36 | Data_Double DQ ? |
36 | ; ¨á«® ¢ BCD-ä®à¬ ⥠|
37 | ; ¨á«® ¢ BCD-ä®à¬ ⥠|
37 | Data_BCD DT ? |
38 | Data_BCD DT ? |
38 | ; ᯮ¬®£ ⥫ìë© ä« £ |
39 | ; ᯮ¬®£ ⥫ìë© ä« £ |
Line 300... | Line 301... | ||
300 | jle .NoMul ;¥á«¨ ç¨á«® e-.. |
301 | jle .NoMul ;¥á«¨ ç¨á«® e-.. |
301 | dec ebx |
302 | dec ebx |
302 | jz .NoDiv ;¥á«¨ ç¨á«® e+0 |
303 | jz .NoDiv ;¥á«¨ ç¨á«® e+0 |
303 | dec ebx |
304 | dec ebx |
304 | lea ebx,[MConst+8*ebx] |
305 | lea ebx,[MConst+8*ebx] |
- | 306 | cmp ebx,MConst.end |
|
- | 307 | jl @f |
|
- | 308 | ffree st0 |
|
- | 309 | fincstp |
|
- | 310 | jmp .Error ;¥á«¨ ®ç¥ì ¡®«ì讥 ç¨á«® e+** |
|
- | 311 | @@: |
|
305 | fmul qword [ebx] ;㬮¦¨âì ª®áâ âã (¤«ï ç¨á¥« á ¯à¨áâ ¢ª®© e+..) |
312 | fmul qword [ebx] ;㬮¦¨âì ª®áâ âã (¤«ï ç¨á¥« á ¯à¨áâ ¢ª®© e+..) |
306 | jmp .NoDiv |
313 | jmp .NoDiv |
307 | .NoMul: |
314 | .NoMul: |
308 | neg ebx |
315 | neg ebx |
309 | lea ebx,[MConst+8*ebx] |
316 | lea ebx,[MConst+8*ebx] |
- | 317 | cmp ebx,MConst.end |
|
- | 318 | jl @f |
|
- | 319 | ffree st0 |
|
- | 320 | fincstp |
|
- | 321 | jmp .Error ;¥á«¨ ®ç¥ì ¬ «¥ìª®¥ ç¨á«® e-** |
|
- | 322 | @@: |
|
310 | fdiv qword [ebx] ;à §¤¥«¨âì ª®áâ âã |
323 | fdiv qword [ebx] ;à §¤¥«¨âì ª®áâ âã |
311 | .NoDiv: ;ë£à㧨âì ç¨á«® ¢ ¤¢®¨ç®¬ ä®à¬ ⥠|
324 | .NoDiv: ;ë£à㧨âì ç¨á«® ¢ ¤¢®¨ç®¬ ä®à¬ ⥠|
312 | fstp [Data_Double] |
325 | fstp [Data_Double] |
313 | .End: |
326 | .End: |
314 | popad |
327 | popad |
Line 354... | Line 367... | ||
354 | add ebx,eax |
367 | add ebx,eax |
355 | lodsb |
368 | lodsb |
356 | jmp .cycle0 |
369 | jmp .cycle0 |
357 | .cycle0end: |
370 | .cycle0end: |
Line -... | Line 371... | ||
- | 371 | ||
- | 372 | cmp ebx,328 ;308 - ¬ ªá. à §¬¥à á⥯¥¨ ¤«ï double + 20 - ç¨á«® à §à冷¢ ¢ BCD |
|
358 | 373 | ja .Error |
|
359 | cmp [Data_Sign_Exp],0 |
374 | cmp [Data_Sign_Exp],0 |
360 | je @f |
375 | je @f |
361 | neg ebx |
376 | neg ebx |
362 | @@: |
377 | @@: |