¦b²Ä¤»³¹¤w¸gµyµy´£¹LµL¸¹¼Æ¡]unsigned number¡^»P¦³¸¹¼Æ¡]signed number¡^¡A«eªÌ¨S¦³¥¿t¸¹¡A¤@¯ë¥iµø¬°¥¿¼Æ©Î¹s¡F«áªÌ¦³¥¿t¸¹¡A¥H³Ì°ª¦ì¤¸ªí¥Ü¨ä²Å¸¹¡A³Ì°ª¦ì¤¸¬°¹s¡Aªí¥Ü¥¿¼Æ¡F¬°¤@ªí¥Üt¼Æ¡C³o¤@³¹¤p¤ì°¸±N±´°Q¦³¸¹¼Æ¡A¨Ã³]p¤@µ{¦¡¥i¥H¿é¤J¨âÓ¦³¸¹¼Æ¡AµM«á¥H³o¨â¼Æ°µ¥[´î¹Bºâ¡A¨Ã±Nµ²ªGÅã¥Ü¦b¿Ã¥ú¹õ¤W¡C
¦b¼Æ¾Ç¤Wªí¥Üt¼Æ«Ü²³æ¡A¥un¦b¼ÆÈ«e¥[¤W¡u¡Ð¡v¸¹§Y¥i¡A¨Ò¦p¡Ð88¡C¦ý¦b¹q¸£¤Wnªí¥Üt¼Æ¸Ó«ç»ò¿ì©O¡H¨ã¤p¤ì°¸©Òª¾¡A¦Ü¤Ö¦³¨âºØ¤è¦¡¡G①¦³¸¹¶q¼Æ¡]ì½X¡^¡B②¤G¸É¼Æ¡C³o¨âºØ¤è¦¡¡A¤£½×þ¤@ºØ¡A³£¬O¥Î³Ì°ª¦ì¤¸ªí¥Ü¥¿¸¹©Ît¸¹¡A³o³Ì°ª¦ì¤¸¤]ºÙ¬°²Å¸¹¦ì¤¸¡C¦pªG¬O¤K¦ì¤¸ªº¼ÆÈ¡A²Ä¤C¦ì¤¸´N¬O²Å¸¹¦ì¤¸¡F¦pªG¬O¤Q¤»¦ì¤¸ªº¼ÆÈ¡A²Ä¤Q¤¦ì¤¸´N¬O²Å¸¹¦ì¤¸¡C¦b¹q¸£»â°ìùØ¡A³Ì§C¦ì¤¸¬O²Ä¹s¦ì¤¸¡C¦p¤U¹Ï¤¤ªº S ´N¥Nªí²Å¸¹¦ì¤¸¡G
¡u¦³¸¹¶q¼Æ¡vªí¥Ü¥¿t¼Æªº¤è¦¡«Üª½Ä±¡C¦pªG²Å¸¹¦ì¤¸¬°¹s¡Aªí¥Ü¥¿¼Æ©Î¹s¡F²Å¸¹¦ì¤¸¬°¤@¡Aªí¥Üt¼Æ¡C¨Ò¦p 5 ªº¤K¦ì¤¸¤G¶i¦ì¼Æ¬O¡u0000 0101¡v¡A¡Ð5 ´N¬O¡u1000 0101¡v¡C³o¼Ëªºªí¥Ü¤è¦¡Áö²³æ¡A¦ý¹Bºâ°_¨Ó´N«Ü½ÆÂø¤F¡C¨Ò¦p§Ú̪¾¹D 5¡Ï(¡Ð5¡~¡×0¡A¦ý¬O¦pªG¥H¦³¸¹¶q¼Æpºâ«oµLªk±o¨ì¹s¡A¥²¶·§â²§¸¹¼Æªº¥[ªk§ï¦¨´îªk¹Bºâ¤~¦æ¡C¦ý¦pªGnºâ¦P¸¹¼Æªº¥[ªk¹Bºâ¡A´N¯uªº¥u¥Î¥[ªk¥hpºâ¡C©Ò¥H°²³]¥Î¦³¸¹¶q¼Æªí¥Ü¦³¸¹¼Æ¡A°µ¥[ªk¹Bºâ«eÁÙn¥ýÀˬd³o¨â¼Æ¬O§_¬°²§¸¹¼Æ¡CÅãµM¥Î³oºØ¤è¦¡ªí¥Ü¦³¸¹¼Æ«Ü²³æ¡A¦ýn¶i¦æ¹Bºâ«o¬O«Ü³Â·Ð¡A¦h¼Æ¹q¸£¤£±Ä¥Î³oºØ¤èªk¡C
¥t¤@ºØªí¥Ü¦³¸¹¼Æªº¤èªk¬O¥Î¡u¤G¸É¼Æ¡v¡A³o¤]¬O²{¤µµ´¤j¦h¼Æ¹q¸£©Ò±Ä¥Îªº¤è¦¡¡A¤]¥]§t x86/x64 ¬Û®e¹q¸£¡C
¦ó¿×¤G¸É¼Æ©O¡H¬Y¼Æªº¤G¸É¼Æ¡A´N¬O¸Ó¼ÆªºtÈ¡C¨º»ò¡A«ç»ò¼Ë¥hpºâ¬Y¼Æªº¤G¸É¼Æ©O¡H¨ä¹ê¨Ã¤£Ãø¡A§Q¥Î©³¤Uªº¨BÆJ¡A«Ü®e©ö´N¯àºâ¥X¨Ó¡G
Á|¨âÓ¨Ò¤l¨Ó¸Õ¸Õ¬Ý¡G
²Ä¤@Ó¨Ò¤l¡A¨D¤K¦ì¤¸ 58h ªº¤G¸É¼Æ¡A¦p¤U¹Ï¡G
¬G 58h ªº¤G¸É¼Æ¬O A8h | ²Ä¤GÓ¨Ò¤l¡A¨D¤K¦ì¤¸ 9Bh ªº¤G¸É¼Æ¡A¦p¤U¹Ï¡G
¬G 9Bh ªº¤G¸É¼Æ¬O 65h |
¥t¥~ÁÙ¦³¤@ºØ¤è¦¡¤]¯àpºâ¬Y¼Æªº¤G¸É¼Æ¡G
¨Ò¦p©³¤Uªº¨Ò¤l¡A¤@¼Ë¬Opºâ 58h ªº¤G¸É¼Æ¡G58h Åܬ°¤G¶i¦ì¬O¡u0101 1000¡v¡A±q²Ä¹s¦ì¤¸¶}©l©¹°ª¦ì¤¸¡A¦p¹J¹s«h·Ó§Û¡A©Ò¥H¬O¡u000¡v¡A²Ä¤@¦¸¹J¨ì 1 ·Ó§Û¡A©Ò¥H¬O¡u1000¡v¡A±µ¤U¨Ó©Ò¦³¦ì¤¸§¡¤ÏÂà¡A¬G³Ì«áµ²ªG¬O¡u1010 1000¡v¡A¨£¤U¹Ï¡G
¤G¸É¼Æ¦³¨âӫܯS§Oªº©Ê½è¡G


¦^·Q°ê¤¤®É¾Ç¥¿t¼Æ¡A¦pªG¨â¼Æ¬Û¥[¬°¹s¡A³o¨âӼƥ²¬O¤@¥¿¤@t¡A·N§Yµ¥È²§¸¹¡A¨Ò¦p ¡Ï58 ©M ¡Ð58¡A¥¦Ìµ¥È²§¸¹¡A¤¬¬°¬Û¤Ï¼Æ¡]¦b¼Æ¾Ç¤W¡A¨â¼Æ¤§©M¬°¹sªº¡A³o¨â¼Æ´N¤¬¬°¬Û¤Ï¼Æ¡^¡C¥t¥~¡A¦pªG§â 58 ¨útÈÅÜ ¡Ð58¡A¦A¨út¸¹¡Aµ²ªG¤SÅܦ¨ ¡Ï58¡C
¬Y¼Æ»P¨ä¤G¸É¼Æ¡A«ê¦n³£²Å¦X¤W±ªº©Ê½è¡A¦]¦¹§Ú̧â¬Y¼Æ»P¨ä¤G¸É¼Æ·í¦¨¨âӬۤϼơA¤]´N¬O»¡¡A58h ¨ú¨ätȬO A8h¡A9Bh ¨ú¨ätȬO 65h¡C©Ò¥H³Ì«áµ²½×¬O¡G²{¥N¹q¸£ùØ¡A¨ú¬Y¼ÆªºtÈ¡A§Y¬°¸Ó¼Æªº¤G¸É¼Æ¡C
©w¸q¦³¸¹¼Æªº¤èªk¬O¨Ï¥Î¤U±¥|Ó°²«ü¥O¡A»yªk¦p¤U¡G
ÅܼƦW SBYTE ªì©lÈ ÅܼƦW SWORD ªì©lÈ ÅܼƦW SDWORD ªì©lÈ ÅܼƦW SQWORD ªì©lÈ
SBYTE¡BSWORD¡BSDWORD¡BSQWORD ¤¤ªº¡uS¡v¬O signed ªº·N«ä¡C³o¥|Ó°²«ü¥O¡A¤£¶È¥Î©ó¸ê®Æ°Ï¬q¤¤©w¸qÅܼƩα`¼Æ¡A¤]¯à¥Î©ó°Ï°ìÅܼƤ¤¡C¤U±¬O¦b°Ï°ìÅܼƤ¤©w¸q¦³¸¹¼Æ¡A¨ä¤¤ªº¸ê®ÆÃþ«¬´N¬O³o¥|Ó°²«ü¥O¤¤ªº¤@Ó¡G
LOCAL ÅܼƦWºÙ[¤¸¯ÀÓ¼Æ]:¸ê®ÆÃþ«¬,...
©w¸q¦³¸¹¼Æ®É¨Ì¾Ú¨ä½d³ò¨M©w¨Ï¥Îþ¤@ºØ°²«ü¥O¡A¥¦Ìªº½d³ò¦p¤Uªí¡G
| ºØÃþ | °²«ü¥O | ¦WºÙ | ªø«× ¡]¦ì¤¸²Õ¡^ | ©Ò¯àªí¥Üªº¾ã¼Æ½d³ò | |
| ¥H¾ã¼Æªí¥Ü½d³ò | ¥H 2 ªº«ü¼Æªí¥Ü½d³ò | ||||
| µL¸¹¼Æ | DB¡BBYTE | ¦ì¤¸²Õ | 1 | 0¡ã255 | 0¡ã28¡Ð1 |
| DW¡BWORD | ¦r²Õ | 2 | 0¡ã65,535 | 0¡ã216¡Ð1 | |
| DD¡BDWORD | Âù¦r²Õ | 4 | 0¡ã4,294,967,295 | 0¡ã232¡Ð1 | |
| DQ¡BQWORD | ¥|¦r²Õ | 8 | 0¡ã18,446,744,073,709,551,615 | 0¡ã264¡Ð1 | |
| ¦³¸¹¼Æ | SBYTE | ¦ì¤¸²Õ | 1 | ¡Ð128¡ã127 | ¡Ð27¡ã27¡Ð1 |
| SWORD | ¦r²Õ | 2 | ¡Ð32,768¡ã32,767 | ¡Ð215¡ã215¡Ð1 | |
| SDWORD | Âù¦r²Õ | 4 | ¡Ð2,147,483,648¡ã2,147,483,647 | ¡Ð231¡ã231¡Ð1 | |
| SQWORD | ¥|¦r²Õ | 8 | ¡Ð9,223,372,036,854,775,808¡ã9,223,372,036,854,775,807 | ¡Ð263¡ã263¡Ð1 | |
ÁöµM¦b¤Wªí¤¤¡A¥Î¤£¦Pªº°²«ü¥O©w¸q¦³¸¹¼Æ©MµL¸¹¼Æ¡A¦ý¬O¹ê»Ú¤W²Õ;¹¨Ã¤£¤Ó¦b¥G³oºØ°Ï§O¡A¨Ò¦p§A¤]¥i¥H¥Î DB/DW/DD ©w¸q¦³¸¹¼Æ¡A¤Ï¹L¨Ó¤]¥i¥H¥Î SBYTE/SWORD/SDWROD «Å§iµL¸¹¼Æ¡A¤U±ªº¨Ò¤l³£¬O¥¿½Tªº«Å§i¡G
x DB -1 y DW -100 z SWORD 65535
¦¹¥~nª¾¹Dªº¬O¡AµL¸¹¼Æ©Î¦³¸¹¼Æªº§P§O¤è¦¡¨ä¹ê§¹¥þ¥Ñµ{¦¡¨M©w¡A¨Ã«D¥Ñ©w¸q®É¨M©w¡A³o¤]´N¬O¬°¦ó²Õ;¹¤£¤Ó¦b¥G DB/BYTE »P SBYTE ªº°Ï§O¡C¨Ò¦p¬YӦ줸²Õ¬O 0FFh ¨ä¹ê¥i¥Hªí¥ÜµL¸¹¼Æªº 255¡A¤]¥i¥Hªí¥Ü¦³¸¹¼Æªº ¡Ð1¡A§¹¥þ¬Ýµ{¦¡¦p¦ó¸ÑÄÀ¡C
¥H¬Y¼Æªº¤G¸É¼Æªí¥Ü¸Ó¼ÆªºtȦ³³\¦hÀuÂI¡A¦ý«o¦³Ó¤p¯ÊÂI¡FµM¦Ó¡A¥un¤p¤ß³B²z¡A³oÓ¯ÊÂI¨Ã¤£·|³y¦¨¤Ó¤jªº§xÂZ¡C³oÓ¯ÊÂI¬O¤°»ò©O¡H¥ý¨Ó¬Ý©³¤Uªº¨Ò¤l¡C
¦pªGnpºâ¨â®É¶i¦ì¾ã¼Æ¡A96¡Ï92¡A¤§©M¡A§Ú̳£ª¾¹D¡Aµª®×¬O 188¡A¨º»ò¦b¹q¸£ùجO¦p¦ópºâªº©O¡H³o¨â¼Æªº¤Q¤»¶i¦ì¤À§O¬O 60h¡B5Ch¡A¤G¶i¦ì¤À§O¬O 0110 0000¡B0101 1100¡A¥[°_¨ÓÅܦ¨ 1011 1100¡Aµ²ªGÅܦ¨t¼Æ¡A¦p¤U±¥ª¹Ï¡C¹³³o¼Ë±¡§Î¡A¹Bºâªºµ²ªG¶W¹L¥Øªº¹Bºâ¤¸©Ò¯àªí¥Üªº½d³ò¡A´NºÙ¬°·¸¦ì¡]overflow¡^¡C¥H³oÓ¨Ò¤l¨Ó»¡¡A¤K¦ì¤¸©Ò¯àªí¥Üªº¦³¸¹¼Æ½d³ò¬O ¡Ð128¡ã127¡A¦Ó 96¡Ï92 ¬O 188¡A¶W¹L¤F 127¡A³o¼Ëªº±¡§Î´N¬O·¸¦ì¡C
¨âÓt¼Æ¬Û¥[¡A¤]¦³¥i¯à³y¦¨·¸¦ì¡C¨Ò¦p ¡Ð80¡Ï(¡Ð90)¡×¡Ð170¡A¨£¤W±¥k¹Ï¡A¡Ð80¡B¡Ð90 ªº¤Q¤»¶i¦ì¤À§O¬O B0h¡BA6h¡A¬Û¥[¤§«á²Å¸¹¦ì¤¸Åܦ¨ 0¡Aµ²ªG¬°¥¿¼Æ¡C³o¬O¦]¬°µ²ªG¤p©ó ¡Ð128¡A¶W¹L¤F¦³¸¹¼Æªº½d³ò¡A¦]¦¹³y¦¨·¸¦ì¡C
¨º»ò¬O§_¦³¤èªk¯à°÷³B²z³oºØ·¸¦ì¿ù»~©O¡H¨Æ¹ê¤W¡ACPU ¦b³]p®É´N¤w¸g¦Ò¼{³oÓ°ÝÃD¤F¡C·í¹Bºâµo¥Í·¸¦ì®É¡ACPU ·|¦Û°Ê³]©w·¸¦ìºX¼Ð¡]overflow flag¡^¡A¨Ï·¸¦ìºX¼ÐÅܦ¨¤@¡A¦b°£¿ù¾¹ùØÅã¥Ü OV¡F¦pªG¨Sµo¥Í·¸¦ì¡A´N·|²M°£·¸¦ìºX¼Ð¡A¨Ï·¸¦ìºX¼ÐÅܦ¨¹s¡A°£¿ù¾¹Åã¥Ü NV¡C¦b³]pµ{¦¡®É¡A´N¯à°÷¨Ì¾Ú·¸¦ìºX¼Ðªºª¬ºA¡A¦Ò¼{¦p¦ó³B²z·¸¦ìªº°ÝÃD¡C
x64 CPU ùر¦³Ó¼È¦s¾¹¡AºÙ¬°©µ¦ùºX¼Ð¼È¦s¾¹¡A±Mªù°O¿ý CPU ¹Bºâ«áªºª¬ºA¡A¨Ò¦pµ²ªG¬O§_¬°¹s¡B¬O§_µo¥Í·¸¦ìµ¥µ¥¡C·¸¦ìºX¼Ð¬O¦b©µ¦ùºX¼Ð¼È¦s¾¹ªº²Ä¤Q¤@¦ì¤¸¡A¦Ó¥B¶È¤@Ӧ줸¡A²ºÙ OF¡C
¥t¥~¡A¦b©µ¦ùºX¼Ð¼È¦s¾¹ªº²Ä¤CӦ줸¡AºÙ§@²Å¸¹ºX¼Ð¡]sign flag¡^¡A²ºÙ SF¡A¥Î©ó¬ö¿ý¹Bºâµ²ªGªº²Å¸¹¦ì¤¸¬O¤@¡AÁÙ¬O¹s¡C¦pªG¬O¤@¡A¥Nªí¹Bºâµ²ªG¬°tÈ¡A°£¿ù¾¹¥H NG ªí¥Ü¡]negative¡^¡F¦pªG¬O¹s¡A¥Nªí¹Bºâµ²ªG¬°¥¿È¡A°£¿ù¾¹¥H PL ªí¥Ü¡]positive¡^¡C
JO »P JNO ì¤å¬O jump if overflow¡Bjump if not overflow¡C«eªÌªí¥Ü¦pªG·¸¦ìºX¼Ð³Q³]©w®É¡Aµo¥Í¸õÅD¡F«áªÌªí¥Ü·¸¦ìºX¼Ð³Q²M°£®É¡Aµo¥Í¸õÅD¡CJO »P JNO ³q±`¥Î¦b¦³¸¹¼Æ¹Bºâ¤§«á¡AÀˬd¬O§_µo¥Í·¸¦ì¡A¦Ó¶i¦æ¥²nªº³B²z¡C
µL¸¹¼Æ»P¦³¸¹¼Æªº¤ñ¸û¡A©Ò¥Î³N»y¤£¦P¡CµL¸¹¼Æ¥Î°ª©ó¡]above¡^©Î§C©ó¡]below¡^¡A¦³¸¹¼Æ¥Î¤j©ó¡]greater¡^©Î¤p©ó¡]less¡^¡C
JL »P JNGE ¬O¬Û¦Pªº«ü¥O¡A«eªÌªí¥ÜY¤p©ó«h¸õÅD¡]jump if less¡^¡A¤]´N¬O«áªÌªºY¤£¤j©ó©Îµ¥©ó´N¸õÅD¡]jump if not greater or equal¡^¡A¨âªÌ¦P¸q¡A¨âªÌ¤]³£¬O¤ñ¸û¦³¸¹¼Æ¤j¤p¡C³q±`¥¦·|¦b CMP «ü¥O¤§«á¡A¦p¤U±µ{¦¡¡A¦b¤ñ¸û¤§«á¡AY²Å¸¹ºX¼Ð»P·¸¦ìºX¼Ð¤£¦P¡A«hµo¥Í¸õÅD¡C
cmp ¥Øªº¹Bºâ¤¸,¨Ó·½¹Bºâ¤¸
jl less
⁝
less: ⁝ ;¥Øªº¹Bºâ¤¸¤p©ó¨Ó·½¹Bºâ¤¸
CMP «ü¥Oªº¤èªk¬O±N¤ñ¸ûªº¨â¼Æ¬Û´î¡A¦ý¤£§âµ²ªGÀx¦s©ó¥Øªº¹Bºâ¤¸ùØ¡C¦pªG¥Øªº¹Bºâ¤¸¤p©ó¨Ó·½¹Bºâ¤¸¡A¬Û´î¤§«á¬°tÈ¡F¦¹®É CPU ·|§â²Å¸¹ºX¼Ð³]¬°¤@¡C¦ý¬O¶È¶È¨Ì¾Ú²Å¸¹ºX¼Ð¬O¤£°÷ªº¡A¨Ò¦p©³¤Uªº±¡§Î¡G
mov al,127 ;127d¡×7Fh
cmp al,-1
jl less
¦]¬° 127 ¤j©ó¡Ð1¡A¬G¤£À³¸Óµo¥Í¸õÅD¡C¦ý¬O AL¡Ð(¡Ð1)¡×80h¡A¬Û´îµ²ªG²Å¸¹¦ì¤¸¬°¤@¡ACPU ·|±N²Å¸¹ºX¼Ð³]¬°¤@¡C¤]´N¬O»¡¡A¶È¶È¦Ò¼{²Å¸¹ºX¼Ð¬O§_³]©w¡A´N¨M©w¬O§_Åý JL µo¥Í¸õÅD¡A·|³y¦¨»~§P¡C¨s¨äì¦]¡A¬O¦]¬°¨S¦Ò¼{·¸¦ìªº°ÝÃD¡A¤]´N¬O»¡¡A¥²¶·¦P®É¦Ò¼{²Å¸¹ºX¼Ð»P·¸¦ìºX¼Ð¡C©ó¬O·|¦³©³¤U¥|ºØ±¡§Î¡G
| ·¸¦ìºX¼Ð | ²Å¸¹ºX¼Ð | JL ¬O§_¸õÅD | ¨Ò¤l |
| 0 | 0 | §_ | cmp 10,5 |
| 0 | 1 | ¬O | cmp 5,10 |
| 1 | 0 | ¬O | cmp -128,1 |
| 1 | 1 | §_ | cmp 127,-1 |
±q¤Wªí¤¤ªº¥|ºØ±¡§Î¾ã²z±oª¾¡G·í¤£µo¥Í·¸¦ì®É¡]«e¨âºØ±¡§Î¡^¡Aªº½T¬O²Å¸¹ºX¼Ð³Q³]©w¡AJL µo¥Í¸õÅD¡Fµo¥Í·¸¦ì®É¡]«á¨âºØ±¡§Î¡^¡A²Å¸¹ºX¼Ð³Q³]©w¡AJL ·|µo¥Í»~§P¡C¦ý¦pªG¥J²ÓÂk¯Ç«K¥i¥H±o¨ì¡A²Å¸¹ºX¼Ð»P·¸¦ìºX¼Ð¤£¦P®É¡AJL ¤~µo¥Í¸õÅD¡A¤~¬O³Ì¥¿½Tªº°µªk¡C
¥i¯à¦³¤H·|·Q¡AÀ³¸Ó¤]n¦Ò¼{¹sȺX¼Ð³Q²M°£¡]¤]´N¬O¨â¼Æ¤£µ¥©ó¡^®É¡AJL ¤~¸õÅD¡A²¦³º JL ¬OY¤p©ó¤~¸õÅD¡Aµ¥©ó´N¤£¸õÅD¹À¡I¤£¹L¥J²Ó«ä¦Ò«K·|µo²{¡A°²¦p¥Øªº¹Bºâ¤¸µ¥©ó¨Ó·½¹Bºâ¤¸¡ACMP ªºµ²ªG·|¨Ï²Å¸¹ºX¼Ð»P·¸¦ìºX¼Ð³£¬°¹s¡A¤]´N¬O¤Wªí¤¤ªº²Ä¤@ºØ±¡§Î¡A´N¦Û°Ê±Æ°£¤F¨Ï JL ¸õÅDªº±¡§Î¡A©Ò¥H¤£¥²µe³D²K¨¬¦Ò¼{¹sȺX¼Ð¬O§_¥²¶·¬°¹s¡C
JLE »P JNG ¬O¬Û¦Pªº«ü¥O¡A«eªÌªí¥ÜY¤p©ó©Îµ¥©ó«h¸õÅD¡]jump if less or equal¡^¡A¸ò«áªÌªºY¤£¤j©ó´N¸õÅD¡]jump if not greater¡^¬O¤@¼Ëªº·N«ä¡C¥¦Ì»P JL ªº®t§O¥u¦b©ó JLE ¥]§tµ¥©ó¤]·|¸õÅD¡AJL «h¥u¦³¤p©ó¤~¸õÅD¡Aµ¥©ó¨Ã¤£µo¥Í¸õÅD¡C¥Ñ¥H¤W¤ÀªR±oª¾¡AJLE ¬Oµo¥Í¦b²Å¸¹ºX¼Ð»P·¸¦ìºX¼Ð¤£¦P¡A©Î¬O¹sȺX¼Ð¹s®É¡A³o¨âºØ±¡ªp¤¤ªº¥ô¦ó¤@ºØ³£·|µo¥Í¸õÅD¡C
JG »P JNLE ¬O¬Û¦Pªº«ü¥O¡A«eªÌªí¥ÜY¤j©ó«h¸õÅD¡]jump if greater¡^¡A¤]´N¬O«áªÌªºY¤£¤p©ó©Îµ¥©ó´N¸õÅD¡]jump if not less or equal¡^¡A¨âªÌ¦P¸q¡A¨âªÌ¤]³£¬O¤ñ¸û¦³¸¹¼Æ¤j¤p¡C³q±` JG/JNLE »P JL ¤@¼Ë¡A·|¦b CMP «ü¥O¤ñ¸û¤§«á¡AJG Àˬd²Å¸¹ºX¼Ð»P·¸¦ìºX¼Ð¬Û¦P¡A¥B¹sȺX¼Ð¬°¹s®É¡A¤~µo¥Í¸õÅD¡C
JGE »P JNL ¬O¬Û¦Pªº«ü¥O¡A«eªÌªí¥ÜY¤j©ó©Îµ¥©ó«h¸õÅD¡]jump if greater or equal¡^¡A¸ò«áªÌªºY¤£¤p©ó´N¸õÅD¡]jump if not less¡^¬O¤@¼Ëªº·N«ä¡CJGE «ü¥O·|³q±`¦b CMP ¤§«á¡AJGE Àˬd²Å¸¹ºX¼Ð»P·¸¦ìºX¼Ð¬O§_¬Û¦P¡AY¬Û¦P´Nµo¥Í¸õÅD¡C
¤Uªí¬O¥]§t«e±³¹¸`¡A´¿´£¨ì¹Lªº±ø¥ó¸õÅD«ü¥O¡Aªí¤¤¦P¤@¦Cªº«ü¥O·N¸q¬Û¦P¡A¨Ò¦p JA »P JNBE ¬O¬Û¦Pªº«ü¥O¡G
| ¤ÀÃþ | ¦P¸q«ü¥O | ¤¤¤å»y¸q | ì¤å»y¸q | ºX¼Ð |
| ¥Î ©ó µL ¸¹ ¼Æ | JA JNBE | Y°ª©ó´N¸õÅD Y¤£§C©ó©Îµ¥©ó´N¸õÅD | jump if above jump if not below or equal | CF=0 ¥B ZF=0 |
| JB JC JNAE | Y§C©ó´N¸õÅD Y¶i¦ì´N¸õÅD Y¤£°ª©ó©Îµ¥©ó´N¸õÅD | jump if below jump if carry jump if not above or equal | CF=1 | |
| JAE JNB JNC | Y°ª©ó©Îµ¥©ó´N¸õÅD Y¤£§C©ó´N¸õÅD Y¤£¶i¦ì´N¸õÅD | jump if above jump if not below jump if not carry | CF=0 | |
| JBE JNA | Y§C©ó©Îµ¥©ó´N¸õÅD Y¤£°ª©ó´N¸õÅD | jump if below or equal jump if not above | CF=1 ©Î ZF=1 | |
| ¬Ò ¥i | JE JZ | Yµ¥©ó´N¸õÅD Y¬°¹s´N¸õÅD | jump if equal jump if zero | ZF=1 |
| JNE JNZ | Y¤£µ¥©ó´N¸õÅD Y¬°¤£¹s´N¸õÅD | jump if not equal jump if not zero | ZF=0 | |
| ¥Î ©ó ¦³ ¸¹ ¼Æ | JL JNGE | Y¤p©ó´N¸õÅD Y¤£¤j©ó©Îµ¥©ó´N¸õÅD | jump if less jump if not greater or equal | SF≠OF |
| JG JNLE | Y¤j©ó´N¸õÅD Y¤£¤p©óµ¥©ó´N¸õÅD | jump if greater jump if not less or equal | ZF=0 ¥B SF=OF | |
| JLE JNG | Y¤p©ó©Îµ¥©ó´N¸õÅD Y¤£¤j©ó´N¸õÅD | jump if less or equal jump if not greater | ZF=1 ©Î SF≠OF | |
| JGE JNL | Y¤j©óµ¥©ó´N¸õÅD Y¤£¤p©ó´N¸õÅD | jump if greater or equal jump if not less | SF=OF | |
| JO | Yµo¥Í·¸¦ì´N¸õÅD | jump if overflow | OF=1 | |
| JNO | Y¨Sµo¥Í·¸¦ì´N¸õÅD | jump if not overflow | OF=0 |
¦³¸¹¼Æªº¥[´îªk¡A¥i¨Ï¥Î x64 «ü¥Oªº ADD¡BSUB¡A´«¥y¸Ü»¡¡A¤£½×¬OµL¸¹¼ÆÁÙ¬O¦³¸¹¼Æ¡A¥[´îªk³£¬O¨Ï¥Î ADD »P SUB¡C¦ý¼°£ªk´N¤£¦P¤F¡A¹ï©óµL¸¹¼Æ¡A¼°£ªk¨Ï¥Î MUL¡BDIV¡F¹ï©ó¦³¸¹¼Æªº¼°£ªk¡A»Ý¨Ï¥Î IMUL¡BIDIV¡C
x64 ªº¼ªk«ü¥O¦³¤TºØ¡AMUL¡BIMUL¡BAAM¡AMUL ¥Î©óµL¸¹¼Æ¼ªk¡AIMUL ¥Î©ó¦³¸¹¼Æ¼ªk¡AAAM ¥Î©ó BCD ¼Æªº¼ªk¡C¦¹³B¶È¤¶²Ð«e¨âºØ¡A¥ý¤¶²Ð MUL¡A¨ä»yªk¦p¤U¡G
MUL ¹Bºâ¤¸
¬Ý¨£ MUL ªº»yªk¡A¤@©w¦³«Ü¦h¤H·|¦³ºÃ°Ý¡A¼ªk¤£¬OÀ³¸Ón¦³¨âÓ¹Bºâ¤¸¶Ü¡H³Q¼¼Æ»P¼¼Æ¡A«ç»ò·|¥u¦³¤@Ó¹Bºâ¤¸©O¡Hì¨Ó MUL ªº³Q¼¼Æ¥u©w¬O AL¡BAX¡BEAX¡BRAX ¥|ӼȦs¾¹¤¤ªº¨ä¤¤¤@Ó¡A¦Ü©ó¬Oþ¤@Ó¡A¥Ñ¼¼Æªºªø«×¨Ó¨M©w¡A³Q¼¼Æªºªø«×¥²¶·©M¼¼Æªø«×¬Û¦P¡CMUL «á±±µµÛªº¹Bºâ¤¸¨ä¹ê´N¬O¼¼Æ¡A¥i¥H¬O¼È¦s¾¹©ÎÅܼƦý¤£¥i¥H¬O±`¼Æ¡C¨Ò¦p¼¼Æ¬O¤K¦ì¤¸ªø¡A¨º»ò³Q¼¼Æ¤]¬O¤K¦ì¤¸ªø¡AAL¡BAX¡BEAX¡BRAX ¤¤¥u¦³ AL ¬O¤K¦ì¤¸¡A©Ò¥H³Q¼¼Æ´N©ñ¦b AL ùØ¡C
¸Ñ¨M¤F³Q¼¼Æªº°ÝÃD¤§«á¡AÁÙ¦³Ó°ÝÃD´N¬O¼¿n¦s©ó¦ó³B¡Cº¥ý¦³Ó³W«h¡A¼¿nªºªø«×¬O¼¼Æ¦ì¼Æ»P³Q¼¼Æ¦ì¼Æ¤§©M¡C¥H§Ú̼ô±xªº¤Q¶i¦ì¼Æ¨Ó»¡¡A¨â¦ì¼Æ¼¨â¦ì¼Æ³Ì¤jȬO¥|¦ì¼Æ¡A¨Ò¦p 99¡Ñ99¡×9801¡C¦P²z¡A¤KÓ¦ì¼Æªº¤G¶i¦ì¼Æ¼¤KÓ¦ì¼Æªº¤G¶i¦ì¼Æ©Ò±o¤§¼¿n¬°¤Q¤»Ó¦ì¼Æªº¤G¶i¦ì¼Æ¡A¦Ó¤KÓ¦ì¼Æ¤£´N¬O¤K¦ì¤¸¶Ü¡H©Ò¥H AL ¼¥H¤K¦ì¤¸¼È¦s¾¹©ÎÅܼơA©Ò±oªº¼¿nn©ñ¦b¤Q¤»¦ì¤¸ªº AX ¼È¦s¾¹ùØ¡A¨ä¤¤ AH ºÙ¬°°ª¥b³¡¡FAL ºÙ¬°§C¥b³¡¡C¤£¦P¦ì¤¸ªº¼ªk¾ã²z¦¨¤Uªí¡G
| ¼ªk¤è¦¡ | ¼¼Æ | ³Q¼¼Æ | ¼¿n | ½d¨Ò | |
| ¹Bºâ«e | ¹Bºâ«á | ||||
| ¤K¦ì¤¸¼ªk | 8 ¦ì¤¸ÅÜ¼Æ ©Î¼È¦s¾¹ | AL | AX | ;2¡Ñ3¡×6 MOV AX,0102h MOV BX,0103h MUL BL | AX=0006 BX=0103h NC¡BNO |
| ¤Q¤»¦ì¤¸¼ªk | 16 ¦ì¤¸ÅÜ¼Æ ©Î¼È¦s¾¹ | AX | DX:AX | ;200h¡Ñ106h¡×20C00h MOV DX,0FFFFh MOV AX,200h MOV BX,106h MUL BX | DX=0002 AX=0C00h BX=0106h CY¡BOV |
| ¤T¤Q¤G¦ì¤¸¼ªk ¥u¯à¥Î©ó 386µ¥¯Å¥H¤W | 32 ¦ì¤¸ÅÜ¼Æ ©Î¼È¦s¾¹ | EAX | EDX:EAX | ;80000001h¡Ñ2¡×100000002h MOV EDX,88887777h MOV EAX,80000001h MOV EBX,2 MUL EBX | EDX=1 EAX=2 EBX=2 CY¡BOV |
| ¤»¤Q¥|¦ì¤¸¼ªk ¥u¯à¥Î©ó x64µ¥¯Å¥H¤W | 64 ¦ì¤¸ÅÜ¼Æ ©Î¼È¦s¾¹ | RAX | RDX:RAX | ;8¡Ñ8¡×40h MOV RDX,123456789ABCDEF0h MOV RAX,8 MOV RBX,8 MUL RBX | RDX=0 RAX=40h RBX=8 NC¡BNO |
¦AÁ|¤Wªí¤¤¤Q¤»¦ì¤¸ªº¼ªk¬°¨Ò¤l¡A¼¼Æ»P³Q¼¼Æ³£¬O¤Q¤»¦ì¤¸ªø¡A¼¼Æ¦s©ó¤Q¤»¦ì¤¸ªº¼È¦s¾¹©ÎÅܼÆùØ¡A³Q¼¼Æ«h©T©w¦s©ó AX ¼È¦s¾¹¤¤¡C¹Bºâ¤§«á©Ò±o¤§¼¿n¬°¤T¤Q¤G¦ì¤¸¡A¦ý¨Ã¤£¬O©ñ¦b EAX ¼È¦s¾¹ùØ¡C³o¬O¦]¬°¦b x86 CPU ®a±Ú¤¤¡A³Ì¦ªº CPU ¬O¤Q¤»¦ì¤¸ªº 8086¡A¨ä¼È¦s¾¹³£¬O¤Q¤»¦ì¤¸ªø¡A¨S¦³¤T¤Q¤G¦ì¤¸ªº¼È¦s¾¹¡C¤£±o¤w¡A¥u¯à¥Î¨âӼȦs¾¹¦s©ñ¡A^¯Sº¸¥Î DX¡BAX ¦s©ñ¡A¥H DX:AX ªí¥Ü¡ADX ¬O°ª¥b³¡¡AAX ¬O§C¥b³¡¡C¨ì¤F¤T¤Q¤G¦ì¤¸¡B¤»¤Q¥|¦ì¤¸ªº¼ªk¡A¤]¥Î¦¹ºD¨Ò¦s©ñ¼¿n¡C
MUL ¹Bºâ§¹¤§«á·|¼vÅTºX¼Ð¡A¥i¤À¬°¨â³¡¤À»¡©ú¡G
①¡B¶i¦ìºX¼Ð»P·¸¦ìºX¼Ð¡G¦pªG¼¿n¸û°ª¥b³¡¤£¬°¹s¡A¨º»ò¶i¦ìºX¼Ð»P·¸¦ìºX¼Ð·|³Q³]©w¡A§_«h²M°£¡C
②¡B²Å¸¹ºX¼Ð¡B¹sȺX¼Ð¡B»²§U¶i¦ìºX¼Ð¡B¦P¦ìºX¼Ð³£¥¼©w¸q¡C¥¼©w¸qªº·N«ä¬O»¡³o¨ÇºX¼Ð¥i¯à¬O¥ô¦óÈ¡A¤£¦Pªº CPU¡B¬[ºc¡A³£¥i¯à·|¤£¦P¡C¦]¦¹¦b MUL °õ¦æ§¹¡A¤£¥i¥ÑºX¼Ð§PÂ_°õ¦æµ²ªG¡C¨Ò¦p¼¿n¬°¹s¡ACPU ¥¼¥²·|§â¹sȺX¼Ð³]¬°¤@¡C©Ò¥H°²¦pn¦b MUL «á§PÂ_¼¿n¬O§_¬°¹s¡A¤£¯àª½±µ¨Ï¥Î JZ ©Î JNZ¡F¥¿½T°µªk¬O¦b MUL ¤§«á¸É¤W¤@±ø TEST ©Î OR «ü¥O¡C
¥H¤Wªí¤Q¤»¦ì¤¸ªº¼ªk»¡©ú¶i¦ìºX¼Ð»P·¸¦ìºX¼Ð¡G
mov ax,200h
mov bx,106h
mul bx
³o¬O¨âÓ¤Q¤»¦ì¤¸ªºµL¸¹¼Æ¬Û¼¡A¼¿n¬O 20C00h¡A¥²¶·¦s©ñ©ó¨âÓ 16 ¦ì¤¸²Õ¦¨ªº DX:AX ùØ¡A¨ä¤¤ DX ¬O°ª¥b³¡¡AAX ¬O§C¥b³¡¡A¤À§O¬O 2¡B0C00h¡G¤S¦]¬°°ª¥b³¡¤£¬°¹s¡A¬G CPU ·|§â¶i¦ìºX¼Ð»P·¸¦ìºX¼Ð§¡³]¬°¤@¡]CY¡BOV¡^¡C
IMUL ¬O¦³¸¹¼Æªº¼ªk¡A¥¦¦³¤TºØ§Î¦¡¡A¤À§O¬O³æ¹Bºâ¤¸¡BÂù¹Bºâ¤¸¡B¤T¹Bºâ¤¸¡A¨ä»yªk¨Ì§Ç¦p¤U¡G
IMUL ¹Bºâ¤¸ IMUL ¥Øªº¹Bºâ¤¸,¨Ó·½¹Bºâ¤¸ IMUL ¥Øªº¹Bºâ¤¸,¨Ó·½¹Bºâ¤¸,¥ß§YÈ
①¡B³æ¹Bºâ¤¸§Î¦¡ªº¹Bºâ¤¸¬O¼¼Æ¡A³Q¼¼Æ¨Ì¾Ú¼¼Æªº¦ì¤¸Ó¼Æ¡A¥i¯à¬O AL¡BAX¡BEAX¡BRAX¡C´«¥y¸Ü»¡¡AIMUL ªº³æ¹Bºâ¤¸§Î¦¡»P MUL ¬Û¦P¡A®t§O¶È¦b©ó¶i¦ìºX¼Ð»P·¸¦ìºX¼Ðªº·N¸q¡C¦pªG IMUL ©Ò±oªº¼¿n¡A¸û°ª¥b³¡¤£¬O¸û§C¥b³¡²Å¸¹¦ì¤¸ªº©µ¦ù¡A¨º»ò¶i¦ìºX¼Ð»P·¸¦ìºX¼Ð·|³Q³]©w¡A§_«h³Q²M°£¡C¨Ò¦p©³¤Uªº¨Ò¤l¡G
mov ax,4000h
mov bx,3 ;4000h¡Ñ3=C000h=49152
imul bx ;DX:AX=0000:C000
¦]¬° AX ´«¦¨¤G¶i¦ì¬O 1100 0000 0000 0000¡A²Å¸¹¦ì¤¸¬O¤@¡A¦Ó DX ¤ºªº¥þ³¡¦ì¤¸«o³£¬O¹s¡A¨Ã¤£¬O¥Ñ AX ªº²Å¸¹¦ì¤¸©µ¦ù¦Ó¨Ó¡A¬G¶i¦ìºX¼Ð»P·¸¦ìºX¼Ð·|³Q³]©w¡C
②¡BÂù¹Bºâ¤¸§Î¦¡ªº IMUL ·|¶i¦æ¦³¸¹¼Æªº¼ªk¹Bºâ¡A±N¥Øªº¹Bºâ¤¸¼¥H¨Ó·½¹Bºâ¤¸¡A¦A±N©Ò±oªº¼¿n¦s©ó¥Øªº¹Bºâ¤¸¡C¥Øªº¹Bºâ¤¸¥u¥i¥H¬O¼È¦s¾¹¡A¨Ó·½¹Bºâ¤¸¥i¥H¬O¼È¦s¾¹¡B¥ß§YÈ©ÎÅܼơA¤£½×¬Oþ¤@ºØ¡A¥Øªº¹Bºâ¤¸»P¨Ó·½¹Bºâ¤¸ªø«×»Ý¤@P¡C¦]¦¹¡A·í¼¿n¤Ó¤j¥H¦Ü©ó¥Øªº¹Bºâ¤¸®e¯Ç¤£¤U¡A´N·|±N°ª¥b³¡ºIÂ_¡A·N§Y¥Øªº¹Bºâ¤¸¶È¦s¦³¼¿nªº§C¥b³¡¡CYµo¥ÍºIÂ_¡A¶i¦ìºX¼Ð»P·¸¦ìºX¼Ð·|³Q³]©w¡A§_«h³Q²M°£¡C¨Ò¦p©³¤Uªº¨Ò¤l¡G
mov eax,88994025h
mov bx,30h ;4025h¡Ñ30h=C06F0h
imul ax,bx ;EAX=889906F0h
¤W¨Ò¤¤¡AEAX¡×88994025h¡A¦ý¬O°õ¦æ¡uIMAL AX,BX¡v¡A©Ò¥H¬O¤Q¤»¦ì¤¸ªº¼ªk¡A4025h¡Ñ30h¡A쥻¼¿n¬° C06F0h¡A¶W¹L AX ®e¯Ç½d³ò¡A¥u¦³§C¥b³¡¦s©ó AX¡]EAX ªº 16¡ã31 ¦ì¤¸¤£¨ü¼vÅT¡^¡A°ª¥b³¡³£³QºIÂ_¡A¶i¦ìºX¼Ð»P·¸¦ìºX¼Ð·|³Q³]©w¡C
③¡B¤T¹Bºâ¤¸§Î¦¡ªº IMUL ¶i¦æ¦³¸¹¼Æ¼ªk¹Bºâ®É¡A±N¨Ó·½¹Bºâ¤¸¼¥H¥ß§YÈ¡A¦A±N©Ò±oªº¼¿n¦s©ó¥Øªº¹Bºâ¤¸¡C¥Øªº¹Bºâ¤¸¡B¨Ó·½¹Bºâ¤¸»P¥ß§YȪºªø«×¥²¶·¬Û¦P¡A¥¦Ì¥u¯à¦P®É¬O 16¡B32¡B64 ¦ì¤¸¡F¥Øªº¹Bºâ¤¸¥u¯à¬O¼È¦s¾¹¡A¨Ó·½¹Bºâ¤¸¥i¥H¬O¼È¦s¾¹©ÎÅܼơA¥ß§YȬO¦³¸¹¼Æ¡C¤U±¤T¨Ò¤¤ªº n1¡Bn2¡Bn3 ³£¬O±`¼Æ¡A½d³ò¦C¦b«á±¡G
imul ax,bx,n1 ;n1 ¬O 16 ¦ì¤¸ªº¦³¸¹¼Æ¡A½d³ò¬O¡Ð32,768¡ã32,767 imul eax,ebx,n2 ;n2 ¬O 32 ¦ì¤¸ªº¦³¸¹¼Æ¡A½d³ò¬O¡Ð2,147,483,648¡ã2,147,483,647 imul rax,rbx,n3 ;n3 ¬O 64 ¦ì¤¸ªº¦³¸¹¼Æ¡A½d³ò¬O¡Ð9,223,372,036,854,775,808¡ã9,223,372,036,854,775,807
¶i¦æ¤T¹Bºâ¤¸§Î¦¡ªº IMUL ¤§«áªººX¼ÐÈ¡A»PÂù¹Bºâ¤¸§Î¦¡¬Û¦P¡C
IDIV ¬O¦³¸¹¼Æªº°£ªk¡A¥¦ªº»yªk¡B¥Îªk§¡»P²Ä¤»³¹´£¹Lªº DIV «ü¥O¬Û¦P¡G
IDIV ¹Bºâ¤¸
³o¨àªº¹Bºâ¤¸¬O«ü°£¼Æ¡A¥i¥H¬O¤K¡B¤Q¤»¡B¤T¤Q¤G©Î¤»¤Q¥|¦ì¤¸ªº¼È¦s¾¹©ÎÅܼơA¦Ó³Q°£¼Æ¡B°Ó¤Î¾l¼Æ¨Ì°£¼Æªºªø«×¤£¦P¡A©ñ¦b¯S©wªº¼È¦s¾¹¤º¡A½Ð°Ñ¦Ò¤Uªí¡G
| °£ªk¤è¦¡ | °£¼Æ | ³Q°£¼Æ | °Ó¼Æ | ¾l¼Æ | ½d¨Ò | ||
| ¹Bºâ«e | ¹Bºâ«á | ||||||
| ¤K¦ì¤¸°£ªk | 8 ¦ì¤¸ÅÜ¼Æ ©Î¼È¦s¾¹ | AX | AL | AH | ;7¡Ò3¡×2⋯⋯1 MOV AX,7 MOV CL,3 IDIV CL |
AX=0102¡]AL¡×°Ó¡AAH¡×¾l¼Æ¡^ CL=3 | |
| ¤Q¤»¦ì¤¸°£ªk | 16 ¦ì¤¸ÅÜ¼Æ ©Î¼È¦s¾¹ | DX:AX | AX | DX | ;¡Ð700¡Ò300¡×¡Ð2⋯⋯¡Ð100 MOV DX,0FFFFh MOV AX,0FD44h MOV CX,12Ch IDIV CX | AX=0FFFEh¡]°Ó¬°¡Ð2¡^ DX=0FF9Ch¡]¾l¼Æ¬°¡Ð100¡^ CX=12Ch | |
| ¤T¤Q¤G¦ì¤¸°£ªk ¥u¯à¥Î©ó 386µ¥¯Å¥H¤W | 32 ¦ì¤¸ÅÜ¼Æ ©Î¼È¦s¾¹ | EDX:EAX | EAX | EDX | ;¤C»õ¡Òt¤T»õ¡×¡Ð2⋯⋯¤@»õ MOV EDX,0 MOV EAX,29B92700h MOV ECX,0EE1E5D00h IDIV ECX |
EAX=0FFFFFFFEh¡]°Ó¬°¡Ð2¡^ EDX=5F5E100h¡]¾l¼Æ¬°¤@»õ¡^ | |
| ¤»¤Q¥|¦ì¤¸°£ªk ¥u¯à¥Î©ó x64µ¥¯Å¥H¤W | 64 ¦ì¤¸ÅÜ¼Æ ©Î¼È¦s¾¹ | RDX:RAX | RAX | RDX | ;t¤C¥ü¡Òt¤T¥ü¡×2⋯⋯t¤@¥ü MOV RDX,0FFFFFFFF FFFFFFFFh MOV RAX,0FFFFF9A2 2F7C9000h MOV RCX,0FFFFFD45 8210D000h IDIV RCX |
RAX=2¡]°Ó¡^ RDX=FFFFFF172B5AF000h¡]¾l¼Æ¡^ | |
IDIV «ü¥O°õ¦æ§¹«á¡A¶i¦ìºX¼Ð¡B·¸¦ìºX¼Ð¡B²Å¸¹ºX¼Ð¡B¹sȺX¼Ð¡B»²§U¶i¦ìºX¼Ð¡B¦P¦ìºX¼Ð³£¥¼©w¸q¡C¥¼©w¸qªº·N«ä¬O»¡³o¨ÇºX¼Ð¥i¯à¬O¥ô¦óÈ¡A¤£¦Pªº CPU¡B¬[ºc¡A³£¥i¯à·|¤£¦P¡C¦]¦¹¦b IDIV «ü¥O°õ¦æ§¹«á¡A¤£À³¸Ó¥ÑºX¼Ð§PÂ_°õ¦æµ²ªG¡A³oÂI»P DIV «ü¥O¬Û¦P¡CµM¦Ó¡AIDIV «ü¥O¬O¦³¥i¯àµo¥Í·¸¦ìªº±¡§Îm6¡A©ó·¸¦ìºX¼Ð¤W«o¬Ý¤£¥X¨Ó¡A¤U¤@³¹¦A»¡©ú¡C
¹ï©ó°£ªk¦Ó¨¥¡A¤£½×³Q°£¼Æ©Î°£¼Æ¬O¥¿¼Æ¡AÁÙ¬Ot¼Æ¡A³£¥²¶·º¡¨¬©³¤Uªº¤èµ{¦¡¡G
a¡×dq¡Ïr¡A¥B 0<|r|<|d|
¨ä¤¤ a¡Bd¡Bq¡Br ¨Ì§Ç¬O³Q°£¼Æ¡B°£¼Æ¡B°Ó¤Î¾l¼Æ¡A¦Ó¥B³£¬O¾ã¼Æ¡C³o¼Ëªº©w¸q·|¾ÉP¾l¼Æ¦³¨âºØ±¡§Î¡G①¾l¼Æ¥²¬°¥¿¼Æ¡B②¾l¼Æ»P³Q°£¼Æ¦P¸¹¡C¦b¼Æ¾Çpºâ¤W¡A¦h¼Æ¾ÇªÌ±`¨Ï¥Î«eªÌ¡F¦Ó¦b x64 ²Õ¦X»y¨¥¤¤¡A«h¨Ï¥Î«áªÌ¡C
¥»³¹ªº¤º®e¤w¸g¤Ó¦h¤F¡A¦³Ãö¦³¸¹¼Æªº¨Ò¤l¡A½ÐÄ~Äò¾\۲ĤE³¹¡C