16¡¢32λ΢»úÔ­Àí¡¢»ã±àÓïÑÔ¼°½Ó¿Ú¼¼Êõ½Ì³Ì¿ÎºóϰÌâ´ð°¸ ÏÂÔØ±¾ÎÄ

¡¶16/32λ΢»úÔ­Àí¡¢»ã±àÓïÑÔ¼°½Ó¿Ú¼¼Êõ½Ì³Ì¡·

²¿·ÖϰÌâ²Î¿¼½â´ð

µÚ1Õ ΢ÐͼÆËã»úϵͳ¸ÅÊö

¡²Ï°Ìâ1.2¡³

ʲôÊÇͨÓÃ΢´¦ÀíÆ÷¡¢µ¥Æ¬»ú£¨Î¢¿ØÖÆÆ÷£©¡¢DSPоƬ¡¢Ç¶Èëʽϵͳ£¿ ¡²½â´ð¡³

ͨÓÃ΢´¦ÀíÆ÷£ºÊʺϽϹãµÄÓ¦ÓÃÁìÓòµÄ΢´¦ÀíÆ÷£¬ÀýÈç×°ÔÚPC»ú¡¢±Ê¼Ç±¾µçÄÔ¡¢¹¤×÷Õ¾¡¢·þÎñÆ÷ÉϵÄ΢´¦ÀíÆ÷¡£

µ¥Æ¬»ú£ºÊÇָͨ³£ÓÃÓÚ¿ØÖÆÁìÓòµÄ΢´¦ÀíÆ÷оƬ£¬ÆäÄÚ²¿³ýCPUÍ⻹¼¯³ÉÁ˼ÆËã»úµÄÆäËûһЩÖ÷Òª²¿¼þ£¬Ö»ÐèÅäÉÏÉÙÁ¿µÄÍⲿµç·ºÍÉ豸£¬¾Í¿ÉÒÔ¹¹³É¾ßÌåµÄÓ¦ÓÃϵͳ¡£

DSPоƬ£º³ÆÊý×ÖÐźŴ¦ÀíÆ÷£¬Ò²ÊÇÒ»ÖÖ΢¿ØÖÆÆ÷£¬Æä¸üÊʺϴ¦Àí¸ßËÙµÄÊý×ÖÐźţ¬ÄÚ²¿¼¯³ÉÓиßËٳ˷¨Æ÷£¬Äܹ»½øÐпìËٳ˷¨ºÍ¼Ó·¨ÔËËã¡£

ǶÈëʽϵͳ£ºÀûÓÃ΢¿ØÖÆÆ÷¡¢Êý×ÖÐźŴ¦ÀíÆ÷»òͨÓÃ΢´¦ÀíÆ÷£¬½áºÏ¾ßÌåÓ¦Óù¹³ÉµÄ¿ØÖÆÏµÍ³£¬ÆäµäÐ͵ÄÌØµãÊǰѼÆËã»úÖ±½ÓǶÈëµ½Ó¦ÓÃϵͳ֮ÖС£

¡²Ï°Ìâ1.5¡³

˵Ã÷΢ÐͼÆËã»úϵͳµÄÓ²¼þ×é³É¼°¸÷²¿·Ö×÷Óᣠ¡²½â´ð¡³

CPU£ºCPUÒ²³Æ´¦ÀíÆ÷£¬ÊÇ΢»úµÄºËÐÄ¡£Ëü²ÉÓôó¹æÄ£¼¯³Éµç·оƬ£¬Ð¾Æ¬ÄÚ¼¯³ÉÁË¿ØÖÆÆ÷¡¢ÔËËãÆ÷ºÍÈô¸É¸ßËÙ´æ´¢µ¥Ôª£¨¼´¼Ä´æÆ÷£©¡£´¦ÀíÆ÷¼°ÆäÖ§³Öµç·¹¹³ÉÁË΢»úϵͳµÄ¿ØÖÆÖÐÐÄ£¬¶ÔϵͳµÄ¸÷¸ö²¿¼þ½øÐÐͳһµÄЭµ÷ºÍ¿ØÖÆ¡£

´æ´¢Æ÷£º´æ´¢Æ÷ÊÇ´æ·Å³ÌÐòºÍÊý¾ÝµÄ²¿¼þ¡£

ÍⲿÉ豸£ºÍⲿÉ豸ÊÇÖ¸¿ÉÓë΢»ú½øÐн»»¥µÄÊäÈ루Input£©É豸ºÍÊä³ö£¨Output£©É豸£¬Ò²³ÆI/OÉ豸¡£I/OÉ豸ͨ¹ýI/O½Ó¿ÚÓëÖ÷»úÁ¬½Ó¡£

1

×ÜÏߣº»¥Á¬¸÷¸ö²¿¼þµÄ¹²ÓÃͨµÀ£¬Ö÷Òªº¬Êý¾Ý×ÜÏß¡¢µØÖ·×ÜÏߺͿØÖÆ×ÜÏßÐźš£ ¡²Ï°Ìâ1.6¡³

ʲôÊÇ×ÜÏߣ¿Î¢»ú×ÜÏßͨ³£ÓÐÄÄ3×éÐźţ¿¸÷×éÐźŵÄ×÷ÓÃÊÇʲô£¿ ¡²½â´ð¡³

×ÜÏߣº´«µÝÐÅÏ¢µÄ¹²ÓÃͨµÀ£¬ÎïÀíÉÏÊÇÒ»×鹫Óõ¼Ïß¡£ 3×éÐźÅÏߣºÊý¾Ý×ÜÏß¡¢µØÖ·×ÜÏߺͿØÖÆ×ÜÏß¡£

£¨1£©µØÖ·×ÜÏߣº´«Ê佫Ҫ·ÃÎʵÄÖ÷´æµ¥Ôª»òI/O¶Ë¿ÚµÄµØÖ·ÐÅÏ¢¡£ £¨2£©Êý¾Ý×ÜÏߣº´«Êä¶Áд²Ù×÷µÄÊý¾ÝÐÅÏ¢¡£ £¨3£©¿ØÖÆ×ÜÏߣºÐ­µ÷ϵͳÖи÷²¿¼þµÄ²Ù×÷¡£ ¡²Ï°Ìâ1.7¡³

¼ò´ðÈçϸÅÄ £¨1£©¼ÆËã»ú×Ö³¤

£¨2£©È¡Ö¸£­ÒëÂ룭ִÐÐÖÜÆÚ £¨3£©ROM-BIOS £¨4£©ÖÐ¶Ï £¨5£©ISA×ÜÏß ¡²½â´ð¡³

£¨1£©´¦ÀíÆ÷ÿ¸öµ¥Î»Ê±¼ä¿ÉÒÔ´¦ÀíµÄ¶þ½øÖÆÊý¾ÝλÊý³Æ¼ÆËã»ú×Ö³¤¡£

£¨2£©Ö¸ÁîµÄ´¦Àí¹ý³Ì£¬¼´Ö¸´¦ÀíÆ÷´ÓÖ÷´æ´¢Æ÷¶ÁȡָÁ¼ò³ÆÈ¡Ö¸£©£¬·­ÒëÖ¸Áî´úÂëµÄ¹¦ÄÜ£¨¼ò³ÆÒëÂ룩£¬È»ºóÖ´ÐÐÖ¸ÁîËù¹æ¶¨µÄ²Ù×÷£¨¼ò³ÆÖ´ÐУ©µÄ¹ý³Ì¡£

£¨3£©ROM-BIOSÊÇ¡°»ù±¾ÊäÈëÊä³öϵͳ¡±£¬²Ù×÷ϵͳͨ¹ý¶ÔBIOSµÄµ÷ÓÃÇý¶¯¸÷Ó²¼þÉ豸£¬Óû§Ò²¿ÉÒÔÔÚÓ¦ÓóÌÐòÖе÷ÓÃBIOSÖеÄÐí¶à¹¦ÄÜ¡£

£¨4£©ÖжÏÊÇCPUÕý³£Ö´ÐгÌÐòµÄÁ÷³Ì±»Ä³ÖÖÔ­Òò´ò¶Ï¡¢²¢ÔÝʱֹͣ£¬×ªÏòÖ´ÐÐÊÂÏȰ²ÅźõÄÒ»¶Î´¦Àí³ÌÐò£¬´ý¸Ã´¦Àí³ÌÐò½áÊøºóÈÔ·µ»Ø±»ÖжϵÄÖ¸Áî¼ÌÐøÖ´ÐеĹý³Ì¡£

£¨5£©ISA×ÜÏßÊÇÖ¸IBM PC/AT»úÉÏʹÓõÄϵͳ×ÜÏß¡£ ¡²Ï°Ìâ1.8¡³

ÏÂÁÐÊ®Áù½øÖÆÊý±íʾÎÞ·ûºÅÕûÊý£¬Çëת»»ÎªÊ®½øÖÆÐÎʽµÄÕæÖµ£º £¨1£©FFH £¨2£©0H £¨3£©5EH £¨4£©EFH ¡²½â´ð¡³

£¨1£© 255 £¨2£© 0 £¨3£© 94 £¨4£© 239

2

¡²Ï°Ìâ1.9¡³

½«ÏÂÁÐÊ®½øÖÆÊýÕæÖµ×ª»»ÎªÑ¹ËõBCDÂ룺 £¨1£©12 £¨2£©24 £¨3£©68 £¨4£©99 ¡²½â´ð¡³

£¨1£© 12H £¨2£© 24H £¨3£© 68H £¨4£© 99H

¡²Ï°Ìâ1.10¡³

½«ÏÂÁÐѹËõBCDÂëת»»ÎªÊ®½øÖÆÊý£º

£¨1£©10010001 £¨2£©10001001 £¨3£©00110110 £¨4£©10010000 ¡²½â´ð¡³

£¨1£© 91 £¨2£© 89 £¨3£© 36 £¨4£© 90

¡²Ï°Ìâ1.11¡³

½«ÏÂÁÐÊ®½øÖÆÊýÓÃ8λ¶þ½øÖƲ¹Âë±íʾ£º

£¨1£©0 £¨2£©127 £¨3£©£­127 £¨4£©£­57 ¡²½â´ð¡³

£¨1£© 00000000 £¨2£© 01111111 £¨3£© 10000001 £¨4£© 11000111

¡²Ï°Ìâ1.12¡³

ÊýÂë0¡«9¡¢´óд×ÖĸA¡«Z¡¢Ð¡Ð´×Öĸa¡«z¶ÔÓ¦µÄASCIIÂë·Ö±ðÊǶàÉÙ£¿ASCIIÂë0DHºÍ0AH·Ö±ð¶ÔӦʲô×Ö·û£¿ ¡²½â´ð¡³

ÊýÂë0¡«9¶ÔÓ¦µÄASCIIÂëÒÀ´ÎÊÇ30H¡«39H¡£

´óд×ÖĸA¡«Z¶ÔÓ¦µÄASCIIÂëÒÀ´ÎÊÇ£º41H¡«5AH¡£ Сд×Öĸa¡«z¶ÔÓ¦µÄASCIIÂëÒÀ´ÎÊÇ£º61¡«7AH¡£ ASCIIÂë0DHºÍ0AH·Ö±ð¶ÔÓ¦µÄÊǻسµºÍ»»ÐÐ×Ö·û¡£

3

µÚ2Õ ΢´¦ÀíÆ÷Ö¸Áîϵͳ

¡²Ï°Ìâ2.1¡³

΢´¦ÀíÆ÷ÄÚ²¿¾ßÓÐÄÄ3¸ö»ù±¾²¿·Ö£¿8088·ÖΪÄÄÁ½´ó¹¦Äܲ¿¼þ£¿Æä¸÷×ÔµÄÖ÷Òª¹¦ÄÜÊÇʲô£¿ÕâÖֽṹÓë8λCPUÏà±ÈΪʲôÄÜÌá¸ßÆäÐÔÄÜ£¿ ¡²½â´ð¡³

ËãÊõÂß¼­µ¥ÔªALU¡¢¼Ä´æÆ÷×éºÍ¿ØÖÆÆ÷£»

×ÜÏß½Ó¿Úµ¥ÔªBIU£º¹ÜÀí8088Óëϵͳ×ÜÏߵĽӿڸºÔðcpu¶Ô½Ó¿ÚºÍÍâÉè½øÐзÃÎÊ Ö´Ðе¥ÔªEU£º¸ºÔðÖ¸ÁîÒëÂë¡¢Ö´ÐкÍÊý¾ÝÔËË㣻

8λcpuÔÚÖ¸ÁîÒëÂëǰ±ØÐëµÈ´ýȡָÁî²Ù×÷µÄÍê³É£¬8088ÖÐÐèÒªÒëÂëµÄÖ¸ÁîÒѾ­È¡µ½ÁËÖ¸Áî¶ÓÁУ¬²»ÐèÒªµÈ´ýȡָÁî¡£¶øÈ¡Ö¸ÁîÊÇcpu×îΪƵ·±µÄ²Ù×÷£¬Òò´Ë8088µÄ½á¹¹ºÍ²Ù×÷·½Ê½½ÚÊ¡ÁË´óÁ¿µÈ´ýʱ¼ä£¬±È8λcpu½ÚÊ¡ÁËʱ¼ä£¬Ìá¸ßÁËÐÔÄÜ¡£

¡²Ï°Ìâ2.2¡³

˵Ã÷8088µÄ8¸ö8λºÍ8¸ö16λͨÓüĴæÆ÷¸÷ÊÇʲô£¿ ¡²½â´ð¡³

8¸ö8λ¼Ä´æÆ÷£ºAH¡¢AL¡¢BH¡¢BL¡¢CH¡¢CL¡¢DH¡¢DL£»

8¸ö16λ¼Ä´æÆ÷£ºÀÛ¼ÓÆ÷AX¡¢»ùÖ·¼Ä´æÆ÷BX¡¢¼ÆÊýÆ÷CX¡¢Êý¾Ý¼Ä´æÆ÷DX¡¢Ô´µØÖ·¼Ä´æ

Æ÷SI¡¢Ä¿µÄµØÖ·¼Ä´æÆ÷DI¡¢»ùÖ·Ö¸ÕëBP¡¢¶ÑÕ»Ö¸ÕëSP¡£ ¡²Ï°Ìâ2.4¡³

¾ÙÀý˵Ã÷CFºÍOF±êÖ¾µÄ²îÒì¡£ ¡²½â´ð¡³

Àý£ºÓÐÔËË㣺3AH+7CH=B6H

×÷ΪÎÞ·ûºÅÊýÔËË㣬ûÓнøÎ»£¬CF=0;

×÷ΪÓзûºÅÊýÔËË㣬½á¹û³¬³ö·¶Î§£¬OF=1. ¡²Ï°Ìâ2.5¡³

ʲôÊÇ8088ÖеÄÂß¼­µØÖ·ºÍÎïÀíµØÖ·£¿Âß¼­µØÖ·ÈçºÎת»»³ÉÎïÀíµØÖ·£¿1MB×î¶àÄֳܷɶàÉÙ¸öÂß¼­¶Î£¿Ç뽫ÈçÏÂÂß¼­µØÖ·ÓÃÎïÀíµØÖ·±í´ï£º

¢Å FFFFH:0 ¢Æ 40H:17H ¢Ç 2000H:4500H ¢È B821H:4567H ¡²½â´ð¡³

ÎïÀíµØÖ·£ºÎïÀí´æ´¢µ¥Ôª¾ßÓеÄÒ»¸öΨһµÄ20λ±àºÅ

Âß¼­µØÖ·£ºÔÚ8088ÄÚ²¿ºÍÓû§±à³Ìʱ£¬Ëù²ÉÓõġ°¶ÎµØÖ·£ºÆ«ÒƵØÖ·¡±ÐÎʽ

½«Âß¼­µØÖ·ÖеĶεØÖ·×óÒÆ¶þ½øÖÆ4루¶ÔÓ¦16½øÖÆÊÇһ룬¼´³ËÒÔ16£©£¬¼ÓÉÏÆ«ÒƵØÖ·¾ÍµÃµ½20λÎïÀíµØÖ·

4

1MB×î¶àÄÜ·Ö³É1MB¡Â16B£½220¡Â24£½216¸öÂß¼­¶Î£¬ÒòΪÿ¸ô16¸ö×Ö½Úµ¥Ôª¾Í¿ÉÒÔ¿ªÊ¼Ò»¸öÂß¼­¶Î

¢Å FFFFH:0£½FFFF0H ¢Æ 40H:17H£½00417H ¢Ç 2000H:4500H£½24500H ¢È B821H:4567H£½BC777H ¡²Ï°Ìâ2.8¡³

ÒÑÖªDS£½2000H¡¢BX£½0100H¡¢SI£½0002H£¬´æ´¢µ¥Ôª[20100H]¡«[20103H]ÒÀ´Î´æ·Å12H¡¢34H¡¢56H¡¢78H£¬[21200H]¡«[21203H]ÒÀ´Î´æ·Å2AH¡¢4CH¡¢B7H¡¢65H£¬ËµÃ÷ÏÂÁÐÿÌõÖ¸ÁîÖ´ÐÐÍêºóAX¼Ä´æÆ÷µÄÄÚÈÝ£¬ÒÔ¼°Ô´²Ù×÷ÊýµÄѰַ·½Ê½£¿

¢Å mov ax,1200h ¢Æ mov ax,bx

¢Ç mov ax,[1200h] ¢È mov ax,[bx]

¢É mov ax,[bx+1100h] ¢Ê mov ax,[bx+si]

¢Ë mov ax,[bx][si+1100h] ¡²½â´ð¡³

¢Å mov ax,1200h £»AX£½1200H£¬Á¢¼´ÊýѰַ ¢Æ mov ax,bx £»AX£½0100H£¬¼Ä´æÆ÷Ѱַ ¢Ç mov ax,[1200h] £»AX£½4C2AH£¬Ö±½ÓѰַ

¢È mov ax,[bx] £»AX£½3412H£¬¼Ä´æÆ÷¼ä½ÓѰַ

¢É mov ax,[bx+1100h] £»AX£½4C2AH£¬¼Ä´æÆ÷Ïà¶ÔѰַ ¢Ê mov ax,[bx+si] £»AX£½7856H£¬»ùÖ·±äַѰַ

¢Ë mov ax,[bx][si+1100h] £»AX£½65B7H£¬Ïà¶Ô»ùÖ·±äַѰַ ¡²Ï°Ìâ2.9¡³

˵Ã÷ÏÂÃæ¸÷ÌõÖ¸ÁîµÄ¾ßÌå´íÎóÔ­Òò ¢Å mov cx,dl ¢Æ mov ip,ax ¢Ç mov es,1234h ¢È mov es,ds ¢É mov al,300 ¢Ê mov [sp],ax ¢Ë mov ax,bx+di ¢Ì mov 20h,ah ¡²½â´ð¡³

£¨1£©cxΪ×ּĴæÆ÷£¬dlΪ×ֽڼĴæÆ÷£¬ÀàÐͲ»Æ¥Åä¡£

£¨2£©movÖ¸ÁîµÄÄ¿µÄ²Ù×÷ÊýÖ»ÄÜÊǼĴæÆ÷»òÕßÖ÷´æµ¥Ôª£¬ipÊÇÖ¸Õë¡£ £¨3£©²»ÔÊÐíÁ¢¼´Êýµ½¶Î¼Ä´æÆ÷µÄ´«ËÍ¡£ £¨4£©²»ÔÊÐí¶Î¼Ä´æÆ÷Ö®¼äµÄÖ±½Ó´«ËÍ¡£

5

£¨5£©Êý¾ÝÒç³ö¡£

£¨6£©sp²»ÄÜÓÃÓڼĴæÆ÷¼ä½ÓѰַ¡£ £¨7£©¸ñʽ²»¶Ô¡£Ó¦Îª£ºmov ax,[bx+di] £¨8£©movÖ¸ÁîµÄ²Ù×÷Êý²»ÄÜÊÇÁ¢¼´Êý¡£

¡²Ï°Ìâ2.10¡³

ÒÑÖªÊý×Ö0¡«9¶ÔÓ¦µÄ¸ñÀ×ÂëÒÀ´ÎΪ£º18H¡¢34H¡¢05H¡¢06H¡¢09H¡¢0AH¡¢0CH¡¢11H¡¢12H¡¢14H£¬Ëü´æÔÚÓÚÒÔtableΪÊ×µØÖ·£¨ÉèΪ200H£©µÄÁ¬ÐøÇøÓòÖС£ÇëΪÈçϳÌÐò¶ÎµÄÿÌõÖ¸Áî¼ÓÉÏ×¢ÊÍ£¬ËµÃ÷ÿÌõÖ¸ÁîµÄ¹¦ÄܺÍÖ´Ðнá¹û¡£

lea bx,table mov al,8 xlat ¡²½â´ð¡³

lea bx,table mov al,8 xlat

£»»ñÈ¡tableµÄÊ×µØÖ·£¬BX£½200H £»´«ËÍÓûת»»µÄÊý×Ö£¬AL£½8 £»×ª»»Îª¸ñÀ×Â룬AL£½12H

¡²Ï°Ìâ2.11¡³

¸ø³öÏÂÁи÷ÌõÖ¸ÁîÖ´ÐкóALÖµ£¬ÒÔ¼°CF¡¢ZF¡¢SF¡¢OFºÍPFµÄ״̬£º

mov al,89h add al,al add al,9dh cmp al,0bch sub al,al dec al inc al

¡²½â´ð¡³

mov al,89h add al,al add al,9dh cmp al,0bch sub al,al dec al inc al

£»AL£½89H £»AL£½0AFH £»AL£½0AFH £»AL£½0FFH £»AL£½00H

CF ZF SF OF PF

0 0 0 1 0 1

0 1 1 0 1 0

1 0 0 0 0 0

1 1 1 1 1 1

0 1 0 0

£»AL£½12H 1

£»AL£½00H 0

¡²Ï°Ìâ2.12¡³

Çë·Ö±ðÓÃÒ»Ìõ»ã±àÓïÑÔÖ¸ÁîÍê³ÉÈçϹ¦ÄÜ£º

6

¢Å °ÑBX¼Ä´æÆ÷ºÍDX¼Ä´æÆ÷µÄÄÚÈÝÏà¼Ó£¬½á¹û´æÈëDX¼Ä´æÆ÷¡£

¢Æ ÓüĴæÆ÷BXºÍSIµÄ»ùÖ·±äַѰַ·½Ê½°Ñ´æ´¢Æ÷µÄÒ»¸ö×Ö½ÚÓëAL¼Ä´æÆ÷µÄÄÚÈÝÏà¼Ó£¬²¢°Ñ½á¹ûË͵½ALÖС£

¢Ç ÓÃBXºÍÎ»ÒÆÁ¿0B2HµÄ¼Ä´æÆ÷Ïà¶ÔѰַ·½Ê½°Ñ´æ´¢Æ÷ÖеÄÒ»¸ö×ÖºÍCX¼Ä´æÆ÷µÄÄÚÈÝÏà¼Ó£¬²¢°Ñ½á¹ûËͻش洢Æ÷ÖС£

¢È ÓÃÎ»ÒÆÁ¿Îª0520HµÄÖ±½ÓѰַ·½Ê½°Ñ´æ´¢Æ÷ÖеÄÒ»¸ö×ÖÓëÊý3412HÏà¼Ó£¬²¢°Ñ½á¹ûËͻظô洢µ¥ÔªÖС£

¢É °ÑÊý0A0HÓëAL¼Ä´æÆ÷µÄÄÚÈÝÏà¼Ó£¬²¢°Ñ½á¹ûËÍ»ØALÖÐ ¡²½â´ð¡³

¢Å add dx,bx ¢Æ add al,[bx+si] ¢Ç add [bx+0b2h],cx

¢È add word ptr [0520h],3412h ¢É add al,0a0h

¡²Ï°Ìâ2.13¡³

ÉèÓÐ4¸ö16λ´ø·ûºÅÊý£¬·Ö±ð×°ÔÚX¡¢Y¡¢Z¡¢V´æ´¢µ¥ÔªÖУ¬ÔĶÁÈçϳÌÐò¶Î£¬µÃ³öËüµÄÔËË㹫ʽ£¬²¢ËµÃ÷ÔËËã½á¹û´æÓںδ¦¡£

mov ax,X imul Y mov cx,ax mox bx,dx mov ax,Z cwd

add cx,ax adc bx,dx sub cx,540 sbb bx,0 mov ax,V cwd

sub ax,cx sbb dx,bx idiv X ¡²½â´ð¡³

£¨V-£¨X*Y+Z-540£©/X

¡²Ï°Ìâ2.14¡³

¸ø³öÏÂÁи÷ÌõÖ¸ÁîÖ´ÐкóµÄ½á¹û£¬ÒÔ¼°×´Ì¬±êÖ¾CF¡¢OF¡¢SF¡¢ZF¡¢PFµÄ״̬¡£

7

mov ax,1470h and ax,ax or ax,ax xor ax,ax not ax

test ax,0f0f0h

¡²½â´ð¡³

mov ax,1470h and ax,ax or ax,ax xor ax,ax not ax

test ax,0f0f0h

£»AX£½1470H £»AX£½1470H £»AX£½1470H £»AX£½0000H £»AX£½FFFFH £»AX£½FFFFH

CF ZF SF OF PF 0 0 0 0 0

0 0 1 1 0

0 0 0 0 1

0 0 0 0 0

0 0 1 1 1

¡²Ï°Ìâ2.15¡³

¿ØÖÆ×ªÒÆÀàÖ¸ÁîÖÐÓÐÄÄÈýÖÖѰַ·½Ê½£¿ ¡²½â´ð¡³

Ïà¶ÔѰַ¡¢Ö±½ÓѰַ¡¢¼ä½ÓѰַ£¨»¹¿ÉÒԷֳɼĴæÆ÷¼ä½Ó¡¢´æ´¢Æ÷¼ä½Ó£©

¡²Ï°Ìâ2.16¡³

¼ÙÉèDS£½2000H¡¢BX£½1256H¡¢TABLEµÄÆ«ÒÆµØÖ·ÊÇ20A1H£¬ÎïÀíµØÖ·232F7H´¦´æ·Å3280H£¬ÊÔÎÊÖ´ÐÐÏÂÁжÎÄÚ¼ä½ÓѰַµÄ×ªÒÆÖ¸Áîºó£¬×ªÒƵÄÓÐЧµØÖ·ÊÇʲô£¿

¢Å JMP BX

¢Æ JMP TABLE[BX] ¡²½â´ð¡³

£¨1£©1256H £¨2£©3280H

¡²Ï°Ìâ2.17¡³

ÅжÏÏÂÁгÌÐò¶ÎÌø×ªµÄÌõ¼þ ¢Å xor ax,1e1eh je equal

¢Æ test al,10000001b jnz there ¢Ç cmp cx,64h jb there

8

¡²½â´ð¡³

¢Å AX£½1e1eh£¨Òì»òºóΪ0£© ¢Æ ALµÄD0»òD7ÖÁÉÙÓÐһλΪ1 ¢Ç CX£¨ÎÞ·ûºÅÊý£©£¼ 64h

¡²Ï°Ìâ2.18¡³

ÈçÏÂÊÇÒ»¶ÎÈí¼þÑÓʱ³ÌÐò£¬ÇëÎÊNOPÖ¸ÁîÖ´ÐÐÁ˶àÉٴΣ¿ xor cx,cx delay£º nop loop delay ¡²½â´ð¡³

216´Î

¡²Ï°Ìâ2.20¡³

°´ÕÕÏÂÁÐÒªÇ󣬱àдÏàÓ¦µÄ³ÌÐò¶Î£º

¢Å ÓÉstringָʾÆðʼµØÖ·µÄÖ÷´æµ¥ÔªÖдæ·ÅÓÐÒ»¸ö×Ö·û´®£¨³¤¶È´óÓÚ6£©£¬°Ñ¸Ã×Ö·û´®ÖеĵÚ1¸öºÍµÚ6¸ö×Ö·û£¨×Ö½ÚÁ¿£©´«Ë͸øDX¼Ä´æÆ÷¡£

¢Æ ÓÐÁ½¸ö32λÊýÖµ£¬°´¡°Ð¡¶Ë·½Ê½¡±´æ·ÅÔÚÁ½¸ö»º³åÇøbuffer1ºÍbuffer2ÖУ¬±àд³ÌÐò¶ÎÍê³ÉDX.AX¡ûbuffer1£­buffer2¹¦ÄÜ¡£

¢Ç ±àдһ¸ö³ÌÐò¶Î£¬ÔÚDX¸ß4λȫΪ0ʱ£¬Ê¹AX£½0£»·ñÔòʹAX£½£­1¡£ ¢È °ÑDX.AXÖеÄË«×ÖÓÒÒÆ4λ

¢É ÓÐÒ»¸ö100¸ö×Ö½ÚÔªËØµÄÊý×飬ÆäÊ×µØÖ·Îªarray£¬½«Ã¿¸öÔªËØ¼õ1£¨²»¿¼ÂÇÒç³ö»ò½è룩´æÓÚÔ­´¦¡£ ¡²½â´ð¡³

£¨1£© mov dl,string[1] mov dh,string[6] £¨2£© mov ax, word ptr buffer1 sub ax, word ptr buffer2 ; ÏȼõµÍ16λ mov dx, word ptr buffer1+2 sbb dx, word ptr buffer2+2 ; ºó¼õ¸ß16룬Ðè¼õµÍ16λµÄ½èλ £¨3£© test dx,0f000h jz next mov ax,-1

9

next: done: £¨4£© again: £¨5£© again:

jmp done mov ax,0 ¡­

mov cx,4

shr dx,1 ; ÓÒÒÆÒ»Î»£¬ÒƳöµÄµÍλ½øÈëCF±êÖ¾ rcr ax,1 ; ½«CFÒÆ½øAX¸ßλ£¬Í¬Ê±ÊµÏÖAXÓÒÒÆ loop again ; Ñ­»·4´Î£¬ÊµÏÖ4λÓÒÒÆ mov cx,100 mov bx,0

sub array[bx],1 inc bx loop again

10

µÚ3Õ »ã±àÓïÑÔ³ÌÐòÉè¼Æ

¡²Ï°Ìâ3.9¡³

¸ø³öÏÂÁÐÓï¾äÖУ¬Ö¸ÁîÁ¢¼´Êý£¨ÊýÖµ±í´ïʽ£©µÄÖµ£º ¢Å mov al,23h AND 45h OR 67h ¢Æ mov ax,1234h/16+10h ¢Ç mov ax,23h SHL 4

¢È mov al,¡¯a¡¯ AND (NOT(¡¯a¡¯-¡¯A¡¯))

¢É mov ax,(76543 LT 32768) XOR 7654h ¡²½â´ð¡³

£¨1£© al=67h

£¨2£© ax=133h,dx=4h £¨3£© ax=0230h £¨4£© al=41h £¨5£© ax=7654h

¡²Ï°Ìâ3.10¡³

»­Í¼ËµÃ÷ÏÂÁÐÓï¾ä·ÖÅäµÄ´æ´¢¿Õ¼ä¼°³õʼ»¯µÄÊý¾ÝÖµ£º ¢Å byte_var db ¡¯ABC¡¯,10,10h,¡¯EF¡¯,3 dup(-1,?,3 dup(4)) ¢Æ word_var dw 10h,-5,3 dup(?) ¡²½â´ð¡³

£¨1£©´ÓµÍµØÖ·µ½¸ßµØÖ·£¬¸÷¸ö×Ö½ÚÒÀ´ÎÊÇ£º

41h 42h 43h 0ah 10h 45h 46h ffh - 04h 04h 04h ffh - 04h 04h 04h ffh - 04h 04h 04h £¨2£©´ÓµÍµØÖ·µ½¸ßµØÖ·£¬¸÷¸ö×Ö½ÚÒÀ´ÎÊÇ£º 10h 0 FBh FFh - - - - - -

ÆäÖС°-¡±±íʾÎÞ³õÖµ£¬Êµ¼ÊÉÏ»ã±à³ÌÐò»áÌîÈë0¡£

¡²Ï°Ìâ3.11¡³

ÇëÉèÖÃÒ»¸öÊý¾Ý¶Î£¬°´ÕÕÈçÏÂÒªÇó¶¨Òå±äÁ¿£º

¢Å my1bΪ×Ö·û´®±äÁ¿£¬±íʾ×Ö·û´®¡°Personal Computer¡± ¢Æ my2bΪÓÃÊ®½øÖÆÊý±íʾµÄ×Ö½Ú±äÁ¿£¬Õâ¸öÊýµÄ´óСΪ20 ¢Ç my3bΪÓÃÊ®Áù½øÖÆÊý±íʾµÄ×Ö½Ú±äÁ¿£¬Õâ¸öÊýµÄ´óСΪ20 ¢È my4bΪÓöþ½øÖÆÊý±íʾµÄ×Ö½Ú±äÁ¿£¬Õâ¸öÊýµÄ´óСΪ20 ¢É my5wΪ20¸öδ¸³ÖµµÄ×Ö±äÁ¿ ¢Ê my6cΪ100µÄ·ûºÅ³£Á¿

¢Ë my7cΪ×Ö·û´®³£Á¿£¬´úÌæ×Ö·û´®¡°Personal Computer¡±

11

¡²½â´ð¡³

my1b my2b my3b my4b my5w my6c my7c

db 'Personal Computer' db 20 db 14h

db 00010100b dw 20 dup(?) = 100

equ

¡²Ï°Ìâ3.15¡³

¼ÙÉèmywordÊÇÒ»¸ö×Ö±äÁ¿£¬mybyte1ºÍmybyte2ÊÇÁ½¸ö×Ö½Ú±äÁ¿£¬Ö¸³öÏÂÁÐÓï¾äÖеľßÌå´íÎóÔ­Òò¡£

¢Å mov byte ptr [bx],1000 ¢Æ mov bx,offset myword[si] ¢Ç cmp mybyte1,mybyte2 ¢È mov mybyte1,al+1 ¢É sub al,myword ¢Ê jnz myword ¡²½â´ð¡³

(1) 1000 ³¬¹ýÒ»¸ö×Ö½ÚËùÄܱí´ïµÄ×î´óÕûÊý (2)SI ӦΪżÊý

(3)Á½¸öÄÚ´æµ¥Ôª²»ÄÜÖ±½ÓÔËËã (4)²»ÄÜʹÓÃal+1£¬Ó¦¸ÄΪ[al+1]

(5)Ô´²Ù×÷ÊýÓëÄ¿µÄ²Ù×÷ÊýÀàÐͲ»Æ¥Åä

(6)Ìõ¼þ×ªÒÆÖ¸ÁîºóÃæÓ¦½Ó±êºÅ£¬¶ø²»ÊDZäÁ¿

¡²Ï°Ìâ3.16¡³

±àдһ¸ö³ÌÐò£¬°Ñ´Ó¼üÅÌÊäÈëµÄÒ»¸öСд×ÖĸÓôóд×ÖĸÏÔʾ³öÀ´¡£ ¡²½â´ð¡³

mov ah,1 £»Ö»ÔÊÐíÊäÈëСд×Öĸ int 21h sub al,20h £»×ª»»Îª´óд×Öĸ mov dl,al mov ah,2

int 21h £»ÏÔʾ

12

µÚ4Õ ΢»ú×ÜÏß

¡²Ï°Ìâ4.1¡³

΢»ú×ÜÏßµÄÐźÅÏß°üÀ¨______¡¢______¡¢_______¡¢ÒÔ¼°µçÔ´ºÍµØÏß¡£Î¢»úϵͳ¿ÉÒÔ½«×ÜÏß»®·ÖΪÈý²ã£¨Àࣩ£¬ËüÃÇÊÇ______¡¢______ºÍ_______¡£ ¡²½â´ð¡³

Êý¾Ý×ÜÏß ¡¢ µØÖ·×ÜÏß ¡¢ ¿ØÖÆ×ÜÏß Ð¾Æ¬×ÜÏß¡¢ ÄÚ×ÜÏß¡¢Íâ×ÜÏß ¡²Ï°Ìâ4.2¡³

Õ¼ÓÃ×ÜÏß½øÐÐÊý¾Ý´«Ê䣬һ°ãÐèÒª¾­¹ý×ÜÏßÇëÇóºÍÖٲá¢__________¡¢__________ºÍ½áÊø4¸ö½×¶Î¡£ ¡²½â´ð¡³

Ѱַ£¬Êý¾Ý´«ËÍ ¡²Ï°Ìâ4.7¡³

Ö´ÐÐÒ»ÌõÖ¸ÁîËùÐèÒªµÄʱ¼ä±»³ÆÎª______ÖÜÆÚ£¬¶ø×ÜÏßÖÜÆÚÖ¸µÄÊÇ______£¬8088»ù±¾µÄ×ÜÏßÖÜÆÚÓÉ______¸öT×é³É¡£Èç¹û8088µÄCLKÒý½Å½Ó5MHzµÄʱÖÓÐźţ¬ÄÇôÿ¸öT״̬µÄ³ÖÐøÊ±¼äΪ______¡£ ¡²½â´ð¡³

Ö¸Áî

CPUͨ¹ý×ÜÏß²Ù×÷ÓëÍâ½ç£¨´æ´¢Æ÷ºÍI/O¶Ë¿Ú£©½øÐÐÒ»´ÎÊý¾Ý½»»»µÄ¹ý³Ì£¨Ê±¼ä£© 4 200ns ¡²Ï°Ìâ4.8¡³

Çë½âÊÍ8088ÒÔÏÂÒý½ÅÐźţºCLK¡¢A19/S6¡«A16/S3¡¢A15¡«A8¡¢AD7¡«AD0¡¢IO/M¡¢RD¡¢WR¡¢ALEµÄº¬Ò壬²¢»­³öËüÃÇÔÚ´æ´¢Æ÷д×ÜÏßÖÜÆÚÖеIJ¨ÐÎʾÒâ¡£ ¡²½â´ð¡³

CLK£ºCPUʱÖÓÐźÅ

A19/S6¡«A16/S3£ºµØÖ·ÐźÅA19¡«A16ºÍ״̬ÐźÅS6¡«S3·Öʱ¸´ÓÃÐźŠA15¡«A8£ºµØÖ·ÐźÅA15¡«A8

AD7¡«AD0£ºµØÖ·ÐźÅA7¡«A0ºÍÊý¾ÝÐźÅD7¡«D0·Öʱ¸´ÓÃÐźŠIO/M*£ºI/O½Ó¿ÚºÍ´æ´¢Æ÷²Ù×÷Çø±ðÐźŠRD*£º¶Á¿ØÖÆÐźţ¬WR*£ºÐ´¿ØÖÆÐźŠALE£ºµØÖ·Ëø´æÐźÅ

13

¡²Ï°Ìâ4.9¡³

ÔÚ8088µÄ¹¤×÷¹ý³ÌÖУ¬Ê²Ã´Çé¿öÏ»á²úÉúTW£¿¾ßÌå·¢ÉúÔÚʲôʱ¿Ì£¿ ¡²½â´ð¡³

µ±8088½øÐжÁд´æ´¢Æ÷»òI/O½Ó¿Úʱ£¬Èç¹û´æ´¢Æ÷»òI/O½Ó¿ÚÎÞ·¨Âú×ãCPUµÄ¶Á

дʱÐò£¨À´²»¼°Ìṩ»ò¶ÁÈ¡Êý¾Ýʱ£©£¬ÐèÒªCPU²åÈëµÈ´ý״̬Tw¡£

ÔÚ¶Áд×ÜÏßÖÜÆÚµÄT3ºÍT4Ö®¼ä²åÈëTw¡£ ¡²Ï°Ìâ4.11¡³

ÔÚ8088ϵͳÖУ¬¶ÁȡָÁî¡°ADD [2000H], AX¡±£¨Ö¸Á¶ÈΪ3¸ö×Ö½Ú£©ºÍÖ´ÐиÃÖ¸Áî¸÷ÐèÒª¼¸¸ö×ÜÏßÖÜÆÚ£¿ËüÃǸ÷ÊÇʲôÑùµÄ×ÜÏßÖÜÆÚ£¿ ¡²½â´ð¡³

ÿ¸ö×ÜÏßÖÜÆÚÖ»ÄܶÁдһ¸ö×Ö½ÚÊý¾Ý¡£ËùÒÔ¶ÁȡָÁ¶ÈΪ3¸ö×Ö½ÚµÄÖ¸Áî

¡°ADD [2000H], AX¡±ÐèÒª 3 ¸öʱÖÓÖÜÆÚ£¬Ö´ÐÐʱÐèÒª 2 ¸öʱÖÓÖÜÆÚ¡£

¶ÁȡָÁîÊÇ ´æ´¢Æ÷¶Á ×ÜÏßÖÜÆÚ£¬Ö´ÐÐʱÊÇ ´æ´¢Æ÷д ×ÜÏßÖÜÆÚ¡£

14

µÚ5Õ Ö÷´æ´¢Æ÷

¡²Ï°Ìâ5.3¡³

ÀàËÆ´¦ÀíÆ÷×ÜÏߣ¬´æ´¢Æ÷оƬҲ·Ö³ÉÊý¾Ý¡¢µØÖ·ºÍ¿ØÖÆ3ÀàÒý½Å¡£ÒÔ´æ´¢½á¹¹Îª32K¡Á8µÄSRAM 62256ΪÀý£¬¸ÃоƬӦÓÐ________¸öÊý¾ÝÒý½Å¡¢________¸öµØÖ·Òý½Å£¬3¸öµäÐ͵ĿØÖÆÒý½Å·Ö±ðÊÇ________¡¢________ºÍ________¡£ ¡²½â´ð¡³

8 15 Ƭѡ Êä³öÔÊÐí дÈëÔÊÐí ¡²Ï°Ìâ5.7¡³

EEPROMµÄ²ÁдÓëÉÁ´æµÄ²ÁдÓÐʲô²»Í¬£¿ÒÔAT28C040»òAT29C512ΪÀý£¬ËµÃ÷³£ÓõÄÁ½ÖÖÅжϲÁдÊÇ·ñÍê³ÉµÄ·½·¨£¬²¢¹ÀËãÁ½ÕßÍê³ÉÕû¸öоƬ±à³ÌµÄ×î¿ìʱ¼ä¡£ ¡²½â´ð¡³

AT28C040×î¿ì±à³Ìʱ¼ä£º

£¨512¡Á1024/256£©¡Á10ms£½20480ms¡Ö20s AT29C512×î¿ì±à³Ìʱ¼ä£º

512ÉÈÇø¡Á£¨10ms£«128×Ö½Ú¡Á£¨150¡Á10-3£«90¡Á10-6£©ms£©¡Ö14950.4ms¡Ö15s ¡²Ï°Ìâ5.8¡³

SRAMоƬµÄƬѡÒý½ÅÓÐʲôÓÃ;£¿¼ÙÉèÔÚ8088΢´¦ÀíÆ÷ϵͳÖУ¬µØÖ·ÐźÅA19¡«A15Êä³ö01011ʱÒëÂëµç·²úÉúÒ»¸öÓÐЧµÄƬѡÐźţ¬Ôò¸ÃƬѡÐźŽ«Õ¼ÓжàÉÙÖ÷´æÈÝÁ¿£¿ÆäµØÖ··¶Î§ÊÇʲô£¿ ¡²½â´ð¡³

Ö÷´æÈÝÁ¿£º215£½32KB£¬ÒòµÍλµØÖ·ÐźŵĸöÊýÊÇ15¸ö¡£ µØÖ··¶Î§£º01011 000000000000000 ¡« 01011 11111111111111£¬¼´58000H¡«5FFFFH¡£

¡²Ï°Ìâ5.11¡³

ʲôÊÇ´æ´¢Æ÷оƬÁ¬½ÓÖеġ°Î»À©Õ¹¡±ºÍ¡°×ÖÀ©Õ¹¡±£¿²ÉÓÃDRAM 21256£¨256K¡Á1£©¹¹³É512KBµÄRAM´æ´¢Ä£¿é£¬ÐèÒª¶àÉÙ¸öоƬ£¬ÔõÑù½øÐÐλÀ©Õ¹ºÍ×ÖÀ©Õ¹£¿ ¡²½â´ð¡³

λÀ©³ä£º´æ´¢Æ÷оƬÊý¾ÝÒý½Å¸öÊýСÓÚÖ÷»úÊý¾ÝÐźŸöÊýʱ£¬ÀûÓöà¸ö´æ´¢Æ÷оƬÔÚÊý¾Ý¡°Î»¡±·½ÏòµÄÀ©³ä¡£

15

×ÖÀ©³ä£ºµ±Ò»¸ö´æ´¢Æ÷оƬ²»ÄÜÂú×ãϵͳ´æ´¢ÈÝÁ¿Ê±£¬ÀûÓöà¸ö´æ´¢Æ÷оƬÔÚ¡°Êý¾Ý×Ö¡±·½ÏòµÄÀ©³ä¡£

×é³É512KB´æ´¢Ä£¿é£¬ÓÃDRAM 21256£¨256K¡Á1£©ÐèÒª16¸öоƬ£»Î»À©³ä8¸ö£¬×ÖÀ©³ä2×é¡£

¡²Ï°Ìâ5.13¡³

¸ø³öͼ5-28ÖÐ4¸ö´æ´¢Æ÷оƬ¸÷×ÔÕ¼ÓõĵØÖ··¶Î§¡£Èç¹û²ÉÓò¿·ÖÒëÂ룬Ҫָ³öÖØ¸´µÄµØÖ··¶Î§¡£ ¡²½â´ð¡³

4¸ö´æ´¢Ð¾Æ¬¸÷×ԵĿÉÓõØÖ··¶Î§£º оƬºÅ 1 2 3 4 A19A18 00 01 11 11 A17A16 ¡Á¡Á ¡Á¡Á ¡Á0 ¡Á1 A15¡«A0 È«0¡«È«1 È«0¡«È«1 È«0¡«È«1 È«0¡«È«1 00000H¡«3FFFFH 40000H¡«7FFFFH C0000H¡«CFFFFH£¬Öظ´µØÖ·£ºE0000H¡«EFFFFH D0000H¡«DFFFFH£¬Öظ´µØÖ·£ºF0000H¡«FFFFFH µØÖ··¶Î§ 16

µÚ6Õ ÊäÈëÊä³ö½Ó¿Ú

¡²Ï°Ìâ6.1¡³

µäÐ͵ÄI/O½Ó¿Úµç·ͨ³£ÓÐÄÄ3Àà¿É±à³Ì¼Ä´æÆ÷£¿¸÷×ÔµÄ×÷ÓÃÊÇʲô£¿ ¡²½â´ð¡³

£¨1£©Êý¾Ý¼Ä´æÆ÷£º±£´æÍâÉè¸øCPUºÍCPU·¢ÍùÍâÉèµÄÊý¾Ý £¨2£©×´Ì¬¼Ä´æÆ÷£º±£´æÍâÉè»ò½Ó¿Úµç·µÄ״̬

£¨3£©¿ØÖƼĴæÆ÷£º±£´æCPU¸øÍâÉè»ò½Ó¿Úµç·µÄÃüÁî ¡²Ï°Ìâ6.2¡³

I/O¶Ë¿ÚÓë´æ´¢Æ÷µØÖ·³£ÓÐ__????___?ºÍ__????___?Á½ÖÖ±àÅÅ·½Ê½£¬8088/8086´¦ÀíÆ÷Ö§³ÖºóÕߣ¬Éè¼ÆÓÐרÃŵÄI/OÖ¸Áî¡£ÆäÖÐÖ¸ÁîINÊǽ«Êý¾Ý´Ó__????___?´«Êäµ½__????___?£¬Ö´ÐиÃÖ¸Áîʱ8088/8086´¦ÀíÆ÷Òý½Å²úÉú__????___?×ÜÏßÖÜÆÚ¡£Ö¸Áî¡°OUT DX, AL¡±µÄÄ¿µÄ²Ù×÷ÊýÊÇ__????___?Ѱַ·½Ê½£¬Ô´²Ù×÷ÊýÊÇ__????___?Ѱַ·½Ê½¡£ ¡²½â´ð¡³

£¨I/O¶Ë¿ÚÓë´æ´¢Æ÷µØÖ·£©Í³Ò»±àÖ· £¨I/O¶Ë¿ÚÓë´æ´¢Æ÷µØÖ·£©¶ÀÁ¢±àÖ· ÍâÉè ´¦ÀíÆ÷ I/O¶Á

£¨I/O¶Ë¿ÚµÄDX£©¼Ä´æÆ÷¼ä½Ó ¼Ä´æÆ÷ ¡²Ï°Ìâ6.5¡³

ÓÐÒ»¸ö²éѯÊäÈë½Ó¿Úµç·ÀàËÆÍ¼6-9£¬µ«ÆäÊý¾Ý¶Ë¿ÚΪ8F40H¡¢×´Ì¬¶Ë¿ÚΪ8F42H¡£´Ó״̬¶Ë¿Ú×îµÍλ¿ÉÒÔ»ñÖªÊäÈëÉ豸ÊÇ·ñ×¼±¸ºÃÒ»¸ö×Ö½ÚµÄÊý¾Ý£ºD0£½1±íʾ׼±¸ºÃ£¬D0£½0˵Ã÷û׼±¸ºÃ¡£²»¿¼ÂDzéѯ³¬Ê±£¬±à³Ì´ÓÊäÈëÉ豸¶ÁÈ¡100¸ö×Ö½Ú±£´æµ½INBUF»º³åÇø¡£ ¡²½â´ð¡³

again:

mov bx,offset inbuf mov cx,100 mov dx,8f42h

£»²éѯһ´Î

test al,01h jz status mov dx,08f40h in al,dx

£»ÊäÈëÒ»¸ö×Ö½Ú

17

status: in al,dx

mov [bx],al inc bx loop again

£»Ñ­»·£¬ÊäÈë100¸ö×Ö½Ú

¡²Ï°Ìâ6.10¡³

²éѯ¡¢ÖжϺÍDMA´«ËÍÊÇ΢»úÖг£ÓõÄÍâÉèÊý¾Ý½»»»·½Ê½£¬Çë˵Ã÷¸÷×ÔµÄÌØµã¡£ ¡²½â´ð¡³

18

µÚ7Õ ÖжϿØÖƽӿÚ

¡²Ï°Ìâ7.2¡³

8088ÖжÏÏòÁ¿±íµÄ×÷ÓÃÊÇʲô£¿ ¡²½â´ð¡³

¡²Ï°Ìâ7.4¡³

8259AÖÐIRR¡¢IMRºÍISRÈý¸ö¼Ä´æÆ÷µÄ×÷ÓÃÊÇʲô£¿ ¡²½â´ð¡³

ÖжÏÇëÇó¼Ä´æÆ÷IRR£º±£´æ8ÌõÍâ½çÖжÏÇëÇóÐźÅIR0¡«IR7µÄÇëÇó״̬£¬DiλΪ1±íʾIRiÒý½ÅÓÐÖжÏÇëÇó£»Îª0±íʾÎÞÇëÇó¡£

ÖжϷþÎñ¼Ä´æÆ÷ISR£º±£´æÕýÔÚ±»8259A·þÎñ×ŵÄÖжÏ״̬£¬DiλΪ1±íʾIRiÖжÏÕýÔÚ·þÎñÖУ»Îª0±íʾûÓб»·þÎñ¡£

ÖÐ¶ÏÆÁ±Î¼Ä´æÆ÷IMR£º±£´æ¶ÔÖжÏÇëÇóÐźÅIRµÄÆÁ±Î״̬£¬DiλΪ1±íʾIRiÖжϱ»ÆÁ±Î£¨½ûÖ¹£©£»Îª0±íʾÔÊÐí¡£

¡²Ï°Ìâ7.5¡³

PC/XT»úµÄROM-BIOS¶Ô8259AµÄ³õʼ»¯³ÌÐòÈçÏ£º mov al,13h out 20h,al mov al,08h out 21h,al mov al,09h out 21h,al

Çë˵Ã÷ÆäÉ趨µÄ¹¤×÷·½Ê½¡£ ¡²½â´ð¡³

¡²Ï°Ìâ7.6¡³

ijʱ¿Ì8259AµÄIRRÄÚÈÝÊÇ08H£¬ËµÃ÷______¡£Ä³Ê±¿Ì8259AµÄISRÄÚÈÝÊÇ08H£¬ËµÃ÷_______¡£ÔÚÁ½Æ¬8259A¼¶Á¬µÄÖжϵç·ÖУ¬Ö÷ƬµÄµÚ5¼¶IR5×÷Ϊ´ÓƬµÄÖжÏÇëÇóÊäÈ룬Ôò³õʼ»¯Ö÷¡¢´ÓƬʱ£¬ICW3µÄ¿ØÖÆ×Ö·Ö±ðÊÇ_______ºÍ_______¡£ ¡²½â´ð¡³

IR3Òý½ÅÓÐÖжÏÇëÇó

IR3ÕýÔÚ±»ÖжϷþÎñ£¬ÆäËü²»±»´¦Àí 20HºÍ05H¡£

19

¡²Ï°Ìâ7.11¡³

϶γÌÐò¶Á³öµÄÊÇ8259AµÄÄĸö¼Ä´æÆ÷£¿ mov al,0bh out 20h,al nop in al,20h ¡²½â´ð¡³

¶ÁÈ¡ÖжϷþÎñ¼Ä´æÆ÷ISRµÄÄÚÈÝ¡£

ÒòΪִÐÐÊäÈëÖ¸ÁA0£½0£©Ö®Ç°£¬Ö´ÐеÄÊä³öÖ¸ÁдÈëÁËOCW3£¨D4D3£½01£©£¬ÆäÖÐP RR RIS£¨D2D1D0£©£½011Ö¸Ã÷Ëæºó¶Á³öISR¡£

²»ÊDzéѯ×Ö¡£

20

µÚ8Õ ¶¨Ê±¼ÆÊý¿ØÖƽӿÚ

¡²Ï°Ìâ8.2¡³

8253ÿ¸ö¼ÆÊýͨµÀÓëÍâÉè½Ó¿ÚÓÐÄÄЩÐźÅÏߣ¬Ã¿¸öÐźŵÄÓÃ;ÊÇʲô£¿ ¡²½â´ð¡³

CLKʱÖÓÊäÈëÐźšª¡ªÔÚ¼ÆÊý¹ý³ÌÖУ¬´ËÒý½ÅÉÏÿÊäÈëÒ»¸öʱÖÓÐźţ¨Ï½µÑØ£©£¬¼ÆÊýÆ÷µÄ¼ÆÊýÖµ¼õ1

GATEÃÅ¿ØÊäÈëÐźšª¡ª¿ØÖƼÆÊýÆ÷¹¤×÷£¬¿É·Ö³Éµçƽ¿ØÖƺÍÉÏÉýÑØ¿ØÖÆÁ½ÖÖÀàÐÍ OUT¼ÆÊýÆ÷Êä³öÐźšª¡ªµ±Ò»´Î¼ÆÊý¹ý³Ì½áÊø£¨¼ÆÊýÖµ¼õΪ0£©£¬OUTÒý½ÅÉϽ«²úÉúÒ»¸öÊä³öÐźÅ

¡²Ï°Ìâ8.3¡³

8253ÿ¸öͨµÀÓÐ___ÖÖ¹¤×÷·½Ê½¿É¹©Ñ¡Ôñ¡£ÈôÉ趨ijͨµÀΪ·½Ê½0ºó£¬ÆäÊä³öÒý½ÅΪ___µçƽ£»µ±___ºóͨµÀ¿ªÊ¼¼ÆÊý£¬___ÐźŶËÿÀ´Ò»¸öÂö³å___¾Í¼õ1£»µ±___£¬ÔòÊä³öÒý½ÅÊä³ö___µçƽ£¬±íʾ¼ÆÊý½áÊø¡£8253µÄCLK0½Ó1.5MHzµÄʱÖÓ£¬ÓûʹOUT0²úÉúƵÂÊΪ300KHzµÄ·½²¨Ðźţ¬Ôò8253µÄ¼ÆÊýֵӦΪ___£¬Ó¦Ñ¡ÓõŤ×÷·½Ê½ÊÇ___¡£ ¡²½â´ð¡³

6 µÍ

дÈë¼ÆÊý³õÖµ£¨²¢½øÈë¼õ1¼ÆÊýÆ÷£© CLK

¼õ1¼ÆÊýÆ÷ ¼ÆÊýÆ÷¼õΪ0 ¸ß

5£¨£½1.5MHz¡Â300KHz£© 3 ¡²Ï°Ìâ8.4¡³

ÊÔ°´ÈçÏÂÒªÇó·Ö±ð±àд8253µÄ³õʼ»¯³ÌÐò£¬ÒÑÖª8253µÄ¼ÆÊýÆ÷0¡«2ºÍ¿ØÖÆ×ÖI/OµØÖ·ÒÀ´ÎΪ204H¡«207H¡£

¢Å ʹ¼ÆÊýÆ÷1¹¤×÷ÔÚ·½Ê½0£¬½öÓÃ8λ¶þ½øÖƼÆÊý£¬¼ÆÊý³õֵΪ128¡£ ¢Æ ʹ¼ÆÊýÆ÷0¹¤×÷ÔÚ·½Ê½1£¬°´BCDÂë¼ÆÊý£¬¼ÆÊýֵΪ3000¡£ ¢Ç ʹ¼ÆÊýÆ÷2¹¤×÷ÔÚ·½Ê½2£¬¼ÆÊýֵΪ02F0H¡£ ¡²½â´ð¡³

£¨1£©

mov al,50h

mov dx,207h out dx,al

mov al,128 £»80h

21

mov dx,205h

out dx,al £¨2£© mov al,33h mov dx,207h out dx,al

mov ax,3000h £»²»ÊÇ3000 mov dx,204h out dx,al mov al,ah out dx,al £¨3£© mov al,0b4h mov dx,207h out dx,al mov al,02f0h mov dx,206h out dx,al mov al,ah out dx,al

22

µÚ10Õ ²¢ÐнӿÚ

¡²Ï°Ìâ10.4¡³

É趨8255AµÄ¿ÚAΪ·½Ê½1ÊäÈ룬¿ÚBΪ·½Ê½1Êä³ö£¬Ôò¶ÁÈ¡¿ÚCµÄÊý¾ÝµÄ¸÷λÊÇʲôº¬Ò壿 ¡²½â´ð¡³

¡²Ï°Ìâ10.5¡³

¶Ô8255AµÄ¿ØÖƼĴæÆ÷дÈëB0H£¬ÔòÆä¶Ë¿ÚCµÄPC5Òý½ÅÊÇʲô×÷ÓõÄÐźÅÏߣ¿ ¡²½â´ð¡³

·½Ê½¿ØÖÆ×ÖΪB0H£½10110000B£¬ËµÃ÷A×éΪ·½Ê½1ÊäÈ룬Ëü½«Õ÷ÓÃPC5Òý½Å×÷Ϊ

ÊäÈ뻺³åÆ÷ÂúÐźÅIBFA

¡²Ï°Ìâ10.7¡³

µÚ10.2.3½ÚÓÃ8255A¶Ë¿ÚA·½Ê½1Óë´òÓ¡»ú½Ó¿Ú£¬Èç¹û²ÉÓö˿ÚB£¬ÆäËû²»±ä£¬Çë˵Ã÷ÈçºÎÐ޸Ľӿڵ緺ͳÌÐò¡£ ¡²½â´ð¡³

23

mov dx,0fffeh mov al,84h out dx,al mov al,04h

;ʹINTEB£¨PC2£©Îª0£¬½ûÖ¹ÖÐ¶Ï out dx,al ¡­¡­

mov cx,counter ;´òÓ¡×Ö½ÚÊýËÍCX mov bx,offset buffer ;È¡×Ö·û´®Ê×µØÖ· call prints;µ÷ÓôòÓ¡×Ó³ÌÐò prints proc push ax ;±£»¤¼Ä´æÆ÷ push dx

print1: mov al,[bx] ;ȡһ¸öÊý¾Ý mov dx,0fffah out dx,al ;´Ó¶Ë¿ÚBÊä³ö mov dx,0fffch print2: in al,dx test al,02h ;¼ì²â£¨PC1£©Îª1·ñ? jz print2 inc bx loop print1 pop dx pop ax ret prints endp

¡²Ï°Ìâ10.8¡³

ÉèÒ»¹¤Òµ¿ØÖÆÏµÍ³£¬ÓÐËĸö¿ØÖƵ㣬·Ö±ðÓÉËĸö¶ÔÓ¦µÄÊäÈë¶Ë¿ØÖÆ£¬ÏÖÓÃ8255AµÄ¶Ë¿ÚCʵÏÖ¸ÃϵͳµÄ¿ØÖÆ£¬Èçͼ10-22¡£¿ª¹ØK0¡«K3´ò¿ªÔò¶ÔÓ¦·¢¹â¶þ¼«¹ÜL0¡«L3ÁÁ£¬±íʾϵͳ¸Ã¿ØÖƵãÔËÐÐÕý³££»¿ª¹Ø±ÕºÏÔò¶ÔÓ¦·¢¹â¶þ¼«¹Ü²»ÁÁ£¬ËµÃ÷¸Ã¿ØÖƵã³öÏÖ¹ÊÕÏ¡£±àд8255AµÄ³õʼ»¯³ÌÐòºÍÕâ¶Î¿ØÖƳÌÐò¡£ ¡²½â´ð¡³

£»Ð´È뷽ʽ×Ö mov al,100¡Á00¡Á1b mov dx,¿ØÖƿڵØÖ· out dx,al

£»£½81h

£»0fffeh

24

£»¼ÓÈëÏÂÒ»¶Î¸üºÃ£¬Ê¹L0¡«L3È«ÁÁ mov al,0fh mov dx,¶Ë¿ÚCµØÖ· £»0fffch out dx,al

£»¿ØÖƳÌÐò¶Î mov dx,¶Ë¿ÚCµØÖ· £»0fffch in al,dx £»¶ÁÈëPC0¡«PC3 mov cl,4 shl al,cl £»×óÒÆ4λ out dx,al £»¿ØÖÆPC4¡«PC7 ¡²Ï°Ìâ10.16¡³

Èçͼ10-23ΪÓÃһƬ8255A¿ØÖÆ8¸ö8¶Î¹²Òõ¼«LEDÊýÂë¹ÜµÄµç·¡£ÏÖÒªÇó°´ÏÂij¸ö¿ª¹Ø£¬Æä´ú±íµÄÊý×Ö£¨K1Ϊ1£¬K2Ϊ2£¬¡­K8Ϊ8£©ÔÚÊýÂë¹Ü´Ó×óµ½ÓÒÑ­»·ÏÔʾ£¨ÒÑÓÐÒ»¸öÑÓʱ×Ó³ÌÐòdelay¿ÉÒÔµ÷Óã©£¬Ö±µ½°´ÏÂÁíÒ»¸ö¿ª¹Ø¡£¼Ù¶¨8255AµÄÊý¾Ý¶Ë¿ÚA¡¢B¡¢C¼°¿ØÖƶ˿ڵĵØÖ·ÒÀ´ÎΪFFF8H¡«FFFBH¡£±àдÍê³ÉÉÏÊö¹¦ÄܵijÌÐò£¬Ó¦°üÀ¨8255AµÄ³õʼ»¯¡¢¿ØÖƳÌÐòºÍÊýÂë¹ÜµÄÏÔʾ´úÂë±í¡£ ¡²½â´ð¡³

ÏÔʾ´úÂë±í table db 0c0h £»¶ÔÓ¦0£¨ÈÎÒ⣩ db 0f9h,0a4h,0b0h,99h db 92h,82h,0f8h,80h £»¶ÔÓ¦1¡«8 8255A³õʼ»¯ mov dx,0fffbh mov al,10001001b £»£½89h out dx,al £»¿ØÖƳÌÐò

again0: mov dx,0fffah £»ÊäÈ뿪¹Ø×´Ì¬ in al,dx mov cx,8 £»È·¶¨Äĸö¿ª¹Ø±ÕºÏ mov ah,01h £»mov ah,08h again1: shr al,1 £»shl al,1 jnc disp0 inc ah £»dec ah loop again1 jmp disp1 ÏÔʾ×Ö¶Î

disp0: mov bx,offset table

25

mov al,ah

xlat

mov dx,0fff8h

out dx,al £»Êä³ö¶ÎÂë disp1: mov cx,8 £»Ñ­»·ÏÔʾ8λ mov al,01h mov dx,0fff9h

disp2: out dx,al £»Êä³öλÂë call delay shl al,1 loop disp2 jmp again0

26