Ϊʲô64λDelphiÓ¦ÓóÌÐò¼ÆË㲻ͬÓÚ32λ¹¹½¨µÄ½á¹û£¿
ÎÒÃÇ×î½ü¿ªÊ¼´´½¨64λ¹¹½¨ÎÒÃǵÄÓ¦ÓóÌÐòµÄ¹ý³Ì.ÔڱȽϲâÊÔÖÐ,ÎÒÃÇ·¢ÏÖ64λ°æ±¾µÄ¼ÆË㷽ʽ²»Í¬.ÎÒÓÐÒ»¸ö´úÂëʾÀýÀ´ÑÝʾÁ½¸ö¹¹½¨Ö®¼äµÄÇø±ð.
var currPercent,currGross,currCalcValue : Currency; begin currGross := 1182.42; currPercent := 1.45; currCalcValue := (currGross * (currPercent * StrToCurr('.01'))); ShowMessage(CurrToStr(currCalcValue)); end; Èç¹ûÄúÔÚ32λ°æ±¾ÖÐÖ´Ðд˲Ù×÷,ÔòcurrCalcValue½«Ê¹ÓÃ17.1451¼ÆËã,¶ø64λ°æ±¾ÔòÒÔ17.145·µ»Ø. Ϊʲô64λ°æ±¾²»¼ÆËã³ö¶îÍâµÄСÊýλ£¿ËùÓбäÁ¿¶¼¶¨ÒåΪ4¸öÊ®½øÖÆ»õ±ÒÖµ. ½â¾ö·½·¨
ÕâÊÇÎÒµÄSSCCE»ùÓÚÄãµÄ´úÂë.Çë×¢ÒâʹÓÿØÖÆÌ¨Ó¦ÓóÌÐò.ʹÉú»î¸ü¼òµ¥.
{$APPTYPE CONSOLE} uses SysUtils; var currPercent,currCalcValue : Currency; begin currGross := 1182.42; currPercent := 1.45; currCalcValue := (currGross * (currPercent * StrToCurr('.01'))); Writeln(CurrToStr(currCalcValue)); Readln; end. ÏÖÔÚ¿´¿´Éú³ÉµÄ´úÂë.µÚ32λ£º Project3.dpr.13: currCalcValue := (currGross * (currPercent * StrToCurr('.01'))); 0041C409 8D45EC lea eax,[ebp-$14] 0041C40C BADCC44100 mov edx,$0041c4dc 0041C411 E8A6A2FEFF call @UStrLAsg 0041C416 8B1504E74100 mov edx,[$0041e704] 0041C41C 8B45EC mov eax,[ebp-$14] 0041C41F E870AFFFFF call StrToCurr 0041C424 DF7DE0 fistp qword ptr [ebp-$20] 0041C427 9B wait 0041C428 DF2DD83E4200 fild qword ptr [$00423ed8] 0041C42E DF6DE0 fild qword ptr [ebp-$20] 0041C431 DEC9 fmulp st(1) 0041C433 DF2DE03E4200 fild qword ptr [$00423ee0] 0041C439 DEC9 fmulp st(1) 0041C43B D835E4C44100 fdiv dword ptr [$0041c4e4] 0041C441 DF3DE83E4200 fistp qword ptr [$00423ee8] 0041C447 9B wait ¶ø64λ£º Project3.dpr.13: currCalcValue := (currGross * (currPercent * StrToCurr('.01'))); 0000000000428A0E 488D4D38 lea rcx,[rbp+$38] 0000000000428A12 488D1513010000 lea rdx,[rel $00000113] 0000000000428A19 E84213FEFF call @UStrLAsg 0000000000428A1E 488B4D38 mov rcx,[rbp+$38] 0000000000428A22 488B155F480000 mov rdx,[rel $0000485f] 0000000000428A29 E83280FFFF call StrToCurr 0000000000428A2E 4889C1 mov rcx,rax 0000000000428A31 488B0510E80000 mov rax,[rel $0000e810] 0000000000428A38 48F7E9 imul rcx 0000000000428A3B C7C110270000 mov ecx,$00002710 0000000000428A41 48F7F9 idiv rcx 0000000000428A44 488BC8 mov rcx,rax 0000000000428A47 488B0502E80000 mov rax,[rel $0000e802] 0000000000428A4E 48F7E9 imul rcx 0000000000428A51 C7C110270000 mov ecx,$00002710 0000000000428A57 48F7F9 idiv rcx 0000000000428A5A 488905F7E70000 mov [rel $0000e7f7],rax Çë×¢Òâ,32λ´úÂë¶ÔFPUÖ´ÐÐËãÊõ,µ«64λ´úÂëʹÓÃÕûÊýËãÊõÖ´ÐÐ.ÕâÊǹؼüµÄÇø±ð. ÔÚ32λ´úÂëÖÐ,Ö´ÐÐÒÔϼÆË㣺 >½«¡°0.01¡±¶Ò»»Îª»õ±Ò,¼´100,ÔÊÐí¹Ì¶¨µãÒÆ¶¯10,000. ÏÖÔÚ,ÔÚ64λ´úÂëÖÐ,ËüÓе㲻ͬ.ÒòΪÎÒÃÇһֱʹÓÃ64λÕûÊý.¿´ÆðÀ´ÏñÕâÑù£º >½«¡°0.01¡±¶Ò»»Îª»õ±Ò,¼´100. ËùÒÔÎÊÌâÊÇ64λ±àÒëÆ÷ÔÚÿһ¸öÖм䲽ÖèÖж¼»á»®·Ö10,000.´ó¸ÅÊÇΪÁ˱ÜÃâÒç³ö,±È¸¡µã¼Ä´æÆ÷¸üÓпÉÄÜÔÚ64λÕûÊý. ÈçºÎ×öÕâÑùµÄ¼ÆË㣺 100 * 14,500 * 11,200 / 10,000 / 10,000 Ëü»áµÃµ½ÕýÈ·µÄ´ð°¸. £¨±à¼£ºÀî´óͬ£© ¡¾ÉùÃ÷¡¿±¾Õ¾ÄÚÈݾùÀ´×ÔÍøÂ磬ÆäÏà¹ØÑÔÂÛ½ö´ú±í×÷Õ߸öÈ˹۵㣬²»´ú±í±¾Õ¾Á¢³¡¡£ÈôÎÞÒâÇÖ·¸µ½ÄúµÄȨÀû£¬Ç뼰ʱÓëÁªÏµÕ¾³¤É¾³ýÏà¹ØÄÚÈÝ! |
- VB6.0 ¿ª·¢µÄocxÓ¦ÓÃÓÚWeb¡¢C#×ÀÃæÓ¦ÓóÌÐò µÄÃþË÷.
- VB.Net:×¢²á±íµÄ¼òµ¥²Ù×÷
- Lua 5.3 Ô´Âë½â¶Á£¨Ò»£© VS 2015 ±àÒëÔ´Âë
- LuaScript - Init Lua
- ÎÒµÄѧϰÉúÑÄ£¨Delphiƪ£© - 12
- ÓÃVB.Net½ÓÊÕÓʼþ²¢½âÂë-WBWY
- delphi ¨C Èç¹ûÎÒÖ»ÓÐÀà/ VMTµØÖ·,ÈçºÎ»ñÈ¡ÀàµÄµ¥ÔªÃû³Æ
- LUA¼òÃ÷½Ì³Ì
- VBѧϰ2_½âÊÍVBÖÐText1.Text = Input(LOF(1), #1)
- LaravelʵÏÖÓû§×¢²áºÍµÇ¼
- [bigdata-006] ¹¤×÷Á÷ tezºÍoozie
- Delphi XE2 Ö® FireMonkey ÈëÃÅ(22) - Êý¾Ý°ó¶¨:
- LuaÖеĸ³ÖµÓëÔËËã
- Delphi ½ûÓÃÈÎÎñ¹ÜÀíÆ÷
- golangѧϰµÄµãµãµÎµÎ£º¶ÁдÎļþ£¨ÃæÏò¶ÔÏ󰿣©
- LUAµÄ¶ÑÕ»ÎÊÌâ
- Groovyѧϰ±Ê¼Ç£¨Èý£©£º½Ó¿Ú£¬²¼¶ûÅжϣ¬²Ù×÷·ûÖØ
- ´óÊýÏà³Ë¼òµ¥´úÂë
- [iOS] Delphi for iOS °æ±¾ÐèÇó
- arrays ¨C ¼ì²éÊý×éÊÇ·ñ°üº¬ÁíÒ»¸öÊý×éµÄÖµ