ÖйúʯÓÍ´óѧ£¨»ª¶«£©ÏÖ´úÔ¶³Ì½ÌÓý
¡¶Î¢»úÔÀí¼°Ó¦Óá·×ۺϸ´Ï°×ÊÁÏ
Ò»¡¢Ìî¿ÕÌâ
1¡¢ ¶ÔÓÚÊ®Áù½øÖƱíʾµÄÊýÂë19.8H£¬¸ÃÊýÓÃѹËõBCDÂë±íʾʱÊý¾ÝΪ£º 00100101.0101B ¡£ 2¡¢ Éè»úÆ÷×Ö³¤Îª8룬×î¸ßλÊÇ·ûºÅλ¡£ÔòÊ®½øÖÆÊý¨C13Ëù¶ÔÓ¦µÄ²¹ÂëΪ 11110011B ¡£ 3¡¢ 8086/8088 CPU´Ó¹¦ÄÜÉÏ·Ö EU ºÍBIUÁ½²¿·Ö¡£ 4¡¢ ¿É±à³Ì½Ó¿ÚоƬ8255Aº¬ÓÐ 3 ¸ö8λµÄI/O¿Ú¡£
5¡¢ ÉèCS=2500H£¬DS=2400H£¬SS=2430H£¬ES=2520H£¬BP=0200H£¬SI=0010H£¬DI=0206HÔò£ºÖ¸Áî
MOV AX£¬[BP+SI+4]Ô´²Ù×÷ÊýµÄÎïÀíµØÖ·Îª 24514H ¡£ 6¡¢ ²ÉÓü¶Áª·½Ê½£¬ÓÃ9Ƭ8259A¿É¹ÜÀí 64 ¼¶Öжϡ£
7¡¢ Ö¸ÁîMOV AX£¬[BX+DI+10H]Ô´²Ù×÷ÊýµÄѰַ·½Ê½Îª Ïà¶Ô»ùÖ·¼Ó±äַѰַ¡£
8¡¢ ÔÚʹÓÃ8086¼ä½ÓÊäÈë/Êä³öÖ¸Áîʱ£¬±ØÐëÔÚÖ´ÐиÃÖ¸Áî֮ǰ½«ÏàÓ¦µÄ¶Ë¿ÚµØÖ·ËÍÈë DX ¼Ä´æÆ÷ÖС£ 9¡¢ ÈôÖжÏÀàÐÍÂëN=3H£¬Ôò¶ÔÓ¦µÄÖжÏÏòÁ¿ÔÚÖжÏÏòÁ¿±íÖеÚÒ»¸ö×Ö½Úµ¥ÔªµØÖ·Îª 0000CH ¡£ 10¡¢Òª×é³ÉÈÝÁ¿Îª4K¡Á8λµÄ´æ´¢Æ÷£¬ÐèÒª 8 Ƭ4K¡Á1λµÄ¾²Ì¬RAMоƬ²¢Áª¡£
11¡¢¿ÉÆÁ±ÎÖжϴÓCPUµÄ INTR Òý½Å½øÈ룬ֻÓе±ÖжÏÔÊÐí±êÖ¾IFΪ 1 ʱ£¬¸ÃÖжϲÅÄܵÃ
µ½ÏìÓ¦¡£
12¡¢Éè¼ÆÊäÈë/Êä³ö½Ó¿Úʱ£¬Ó¦×ñÊØµÄ»ù±¾ÔÔòÊÇ£ºÊäÈë ÊäÈëÒª»º³å £»Êä³ö Êä³öÒªËø´æ ¡£ 13¡¢8086/8088CPU¿É·ÃÎÊ2¸ö¶ÀÁ¢µÄµØÖ·¿Õ¼ä£¬Ò»¸öΪI/OµØÖ·¿Õ¼ä£¬Æä´óСΪ 64K ×Ö½Ú£»
ÁíÒ»¸öΪ´æ´¢Æ÷µØÖ·¿Õ¼ä£¬Æä´óСΪ 1M ×Ö½Ú¡£
14¡¢Èô¶¨ÒåDA1 DB ¡®hello¡¯£¬Ôò (DA1+3) ´æ·ÅµÄÊý¾ÝÊÇ ¡®1¡¯ ¡£
15¡¢8086/8088 CPU´Ó¹¦ÄÜÉÏ·ÖΪ BIU ºÍ EU Á½²¿·Ö¡£8086/8088CPUÖÐÖ´Ðв¿¼þµÄ¹¦ÄÜÊǸºÔð
Ö¸ÁîµÄÒëÂëºÍÖ¸ÁîÖ´ÐеÄÖ´ÐС£
16¡¢8086ÖеÄBIUÖÐÓÐ 4 ¸ö 16 λµÄ¶Î¼Ä´æÆ÷¡¢Ò»¸ö 16 λµÄÖ¸ÁîÖ¸Õë¡¢ 6 ×Ö½ÚÖ¸Áî¶ÓÁС¢ 20 λµÄµØÖ·¼Ó·¨Æ÷¡£
17¡¢8086 ¿ÉÒÔ·ÃÎÊ 8 λºÍ 16 λµÄ¼Ä´æÆ÷¡£
18¡¢8086CPU´ÓżµØÖ·¶Á³öÁ½¸ö×Ö½Úʱ£¬ÐèÒª 1 ¸ö×ÜÏßÖÜÆÚ£»´ÓÆæµØÖ·¶Á³öÁ½¸ö×Ö½Úʱ£¬ÐèÒª
2 ¸ö×ÜÏßÖÜÆÚ¡£
19¡¢8086/8088CPUµÄ×îС¹¤×÷ģʽÊÇָϵͳÖÐÖ»ÓÐÒ»¸ö´¦ÀíÆ÷£¬CPUÌṩȫ²¿µÄ¿ØÖÆÐźÅ;ËüÊÇͨ¹ý½«
MN/MXÒý½Å½Ó ¸ßµçƽ À´ÊµÏֵġ£
20¡¢CPU·ÃÎÊ´æ´¢Æ÷ʱ£¬ÔÚµØÖ·×ÜÏßÉÏËͳöµÄµØÖ·³ÆÎª ÎïÀíµØÖ· µØÖ·¡£
µÚ 1 Ò³ ¹² 7 Ò³
ÖйúʯÓÍ´óѧ£¨»ª¶«£©ÏÖ´úÔ¶³Ì½ÌÓý
¶þ¡¢µ¥Ñ¡Ìâ
1¡¢ ÏÂÁÐÊý¾ÝÖÐ×î´óµÄÊýΪ__C___ ¡£
A£®(37)8 B£®(75)10 C£®(11011001)2 D£®(27)16
2.~3.ÒÑ֪ij΢»úϵͳµÄ´æ´¢Æ÷ÓÉÈý¸öоƬ×é×é³É£¬Ã¿¸öоƬ×éÈÝÁ¿Îª4K×Ö½Ú£¬×ÜÈÝÁ¿Îª12K×Ö½Ú¡£ÊÔÎÊ£ºÎªÂú×ãÆä±àÖ··¶Î§£¬ÖÁÉÙÐèÒªµØÖ·×ÜÏßÖÐµÄ 14 ¸ù£¿ÆäÖÐ12¸ùÓÃÓÚÿ¸öоƬµÄƬÄÚµØÖ·ÊäÈë¡£ 2¡¢ ÖжÏÏòÁ¿¿ÉÒÔÌṩ £®ÖжϷþÎñ³ÌÐòÈë¿ÚµØÖ·¡£
3¡¢ ÏÂÁÐ8086Ö¸ÁîÖУ¬¶ÔAXµÄ½á¹ûÓëÆäËûÈýÌõÖ¸ÁͬµÄÊÇ D ¡£
A£®MOV AX£¬0 B£®XOR AX£¬AX C£®SUB AX£¬AX D£®OR AX£¬0
4¡¢ Èô¼Ä´æÆ÷AX£¬BX£¬CX£¬DXµÄÄÚÈÝ·Ö±ðΪ11£¬12£¬13£¬14ʱ£¬ÒÀ´ÎÖ´ÐÐPUSH AX£¬PUSH BX£¬
POP CX£¬POP DX£¬PUSH CX£¬PUSH DX£¬POP AX£¬POP BXºó£¬Ôò¼Ä´æÆ÷AXºÍBXµÄÄÚÈÝ·Ö±ðΪ£º 11£¬12
5¡¢ 8086µÄÄÚ´æ¿Õ¼äºÍI/O¿Õ¼äÊǵ¥¶À±àÖ·µÄ£¬·Ö±ðÊÇ1MBºÍ64KB 6¡¢ ÏÂÁÐÖ¸ÁîÖУ¬²»ºÏ·¨µÄÖ¸ÁîÊÇ£º A ¡£
A£®PUSH BL B£®ADD BX£¬[DI] C£®INT 21H D£®IN AX£¬09H
7¡¢ É裨AX£©£½1000H£¬£¨BX)£½2000H£¬ÔòÔÚÖ´ÐÐÁËÖ¸Áî¡°SUB AX£¬BX¡±ºó£¬±ê־λCFºÍZFµÄÖµ·Ö
±ðΪ£º C£®1£¬0
11¡¢8088/8086 CPUÖУ¬Ö¸ÁîÖ¸Õ루IP£©Öдæ·ÅµÄÊÇ B Ö¸ÁîµØÖ·¡£ 12¡¢ÏÂÃæµÄ˵·¨ÖУ¬ B Ö¸ÁîÖÜÆÚ´óÓÚ»úÆ÷ÖÜÆÚ ÊÇÕýÈ·µÄ¡£
Èý¡¢·ÖÎö¼ò´ðÌâ
1¡¢ 8086/8088 CPUÄÚ²¿°üº¬ÓÐÄÄ6¸öרÓüĴæÆ÷£¿ËüÃǵÄÖ÷Òª¹¦ÄÜÊÇʲô£¿ ´ð£ºÓÐCS¡¢DS¡¢ES¡¢SS¡¢IP¡¢PSW £¨3·Ö£©
CS£¨´úÂë¶Î¼Ä´æÆ÷£©£ºÓÃÀ´´æ·Åµ±Ç°´úÂë¶ÎµÄ»ùµØÖ·¡££¨1·Ö£©
DS£¨Êý¾Ý¶Î¼Ä´æÆ÷£©£ºÓÃÀ´´æ·Å¹©³ÌÐòʹÓõÄÊý¾ÝµÄÒ»¶Î´æ´¢ÇøµÄ»ùµØÖ·¡££¨1·Ö£© ES£¨¸½¼Ó¶Î¼Ä´æÆ÷£©£º¸½¼ÓµÄÊý¾Ý¶ÎµÄ»ùµØÖ·£¬£¨1·Ö£© SS£¨¶ÑÕ»¶Î¼Ä´æÆ÷£©£º¶ÑÕ»¶ÎµÄ»ùµØÖ·¡££¨1·Ö£©
IP£º16λ¼Ä´æÆ÷¡£Ö¸Ê¾´úÂë¶Î´æ´¢ÇøÓòÖÐÏÂÒ»ÌõÖ¸ÁîµÄ¶ÎÄÚÆ«ÒÆÁ¿¡££¨1·Ö£© PSW£º±êÖ¾¼Ä´æÆ÷£¬ÓÃÀ´Ö¸Ê¾Î¢´¦ÀíÆ÷µÄ״̬²¢¿ØÖÆÆä²Ù×÷¡££¨1·Ö£©
2 ¡¢ Éè¼Æ¼ÆËã»ú½Ó¿ÚÒª×ñѵĻù±¾ÔÔòÊÇʲô£¿ÎªÊ²Ã´£¿ ´ð£ºÊä³öÒªËø´æ£¬ÊäÈëÒª»º³å¡££¨2·Ö£©
µÚ 2 Ò³ ¹² 7 Ò³
ÖйúʯÓÍ´óѧ£¨»ª¶«£©ÏÖ´úÔ¶³Ì½ÌÓý
ÒòΪ¼ÆËã»úµÄÔËÐÐËٶȱȽϿ죬Êä³öÊý¾Ýͨ³£Òª¾¹ýËø´æ²ÅÄܱ»ÍâÉè¶ÁÈ¡£»ÍâÉèµÄÊý¾ÝÏßͨ¹ý»º³åÆ÷ÓëCPUµÄÊý¾ÝÏßÏàÁ¬½Ó£¬´Ó¶ø±£Ö¤CPUÔÚ¶Áȡһ¸öÍâÉèÊý¾Ýʱ²»»áÒòÆäËüÍâÉèµÄ´æÔÚ¶ø³ö´í¡££¨3·Ö£© 3 ¡¢ 8086´æ´¢Æ÷Ϊʲô·Ö¶Î?ÿ¶Î×î´óΪ¶àÉÙ×Ö½Ú£¿20λÎïÀíµØÖ·µÄÐγɹý³ÌÊÇÔõÑùµÄ? ´ð£º8086CPUÊÇÒ»¸ö16λµÄ½á¹¹£¬ÄÚ²¿¼Ä´æÆ÷¼°Êý¾Ý×ÜÏß¾ùΪ16룬16λµØÖ·Ö»ÄÜѰַ
64KB¿Õ¼ä¡£ÎÞ·¨ËͳöÍⲿËùÐèµÄ20λÎïÀíµØÖ·¡£Òò´Ë²ÉÓ÷ֶιÜÀí°ì·¨£¬À´Ðγɳ¬¹ý16λµÄ´æ´¢Æ÷ÎïÀíµØÖ·£¬À©´ó¶Ô´æ´¢Æ÷µÄѰַ·¶Î§ (1MB£¬20λµØÖ·)¡£ £¨3·Ö£© ×î´ó£º64KB £¨1·Ö£©
µ±CPU·ÃÎÊÄÚ´æÊ±£¬¶Î¼Ä´æÆ÷µÄÄÚÈÝ(¶Î»ùÖ·)×Ô¶¯×óÒÆ4λ(¶þ½øÖÆ)£¬Óë¶ÎÄÚ16λµØÖ·Æ«ÒÆÁ¿Ïà¼Ó£¬ÐγÉ20λµÄÎïÀíµØÖ·¡£ £¨2·Ö£©
4¡¢¶ÑÕ»´æ´¢ÇøÓÉÄÄÁ½¸ö¼Ä´æÆ÷¹ÜÀí£¿¼òÊöÊý¾ÝѹջºÍµ¯Õ»µÄ¹ý³Ì¡£
´ð£º¶ÑÕ»´æ´¢ÇøÓÉÁ½¸ö¼Ä´æÆ÷¹ÜÀí£º¶ÑÕ»Ö¸Õ루SP£©ºÍ¶ÑÕ»¶Î¼Ä´æÆ÷£¨SS£©¡££¨2·Ö£©
µ±Ò»¸ö×ÖÊý¾Ý±»Ñ¹Èë¶Ñջʱ£¬SPÊ×Ïȼõ2£¬È»ºó¶ÔÕ»¶¥´æ´¢µ¥Ôª½øÐÐ16λ×ÖµÄд²Ù×÷£»Æä¸ß 8λÊý¾Ý±»·ÅÔÚSP-1µ¥ÔªÖУ¬µÍ8λÊý¾Ý±»·ÅÔÚ SP-2µ¥ÔªÖС£µ±Êý¾Ý´Ó¶ÑÕ»Öе¯³öʱ£¬µÍ8λ´ÓSPµ¥ÔªÒƳö£¬¸ß8λ´ÓSP+1µ¥ÔªÒƳö£¬È»ºóSP+2¡££¨3·Ö£© £¨1£© £¨2£©
MOV AX£¬[BX] MOV AX£¬[BX][SI]
(1) AX= 1200H (2) AX= 43EFH (3) AX= 3412H (4) AX= 8765H £¨1.5·Ö/Ì⣩ 7¡¢ÈôSTRÊÇ×Ö·û´®µÄÊ×µØÖ·£¬Ö¸³öÏÂÁгÌÐòµÄ¹¦ÄÜ£¬²¢½«Óï¾ä¼ÓÉÏ×¢½â¡£
LEA
BX£¬STR £»È¡STR µÄÆ«ÒÆÁ¿·Åµ½BXÖÐ
MOV CX£¬20 £»_ÉèÖÃÑ»·´ÎÊý________
LP£º CMP [BX]£¬¡®*¡¯
JNZ NEXT £»BXËùÖ¸µ¥ÔªÄÚÈݲ»Îª¡®*¡¯£¬Ôò×ªÒÆÖÁNEXT MOV [BX]£¬¡®$¡¯ £»½«BXËùÖ¸µ¥ÔªÓá®$¡¯Ìæ´ú
BX £»BX¼Ó1£¬Ö¸ÏòÏÂÒ»¸öµ¥Ôª
LP £»CX-1²»µÈÓÚ0Ôò×ªÒÆÖÁLP´¦£¬¼ÌÐøÑ»·
NEXT£º INC
LOOP HLT
³ÌÐòµÄ¹¦ÄÜ£º½«STR¿ªÊ¼µÄǰ20¸ö×Ö·ûÖеġ®*¡¯Óá®$¡¯Ìæ´ú
8¡¢ ¼ÙÉèij³ÌÐò¶ÎÖеÄÊý¾Ý¶¨ÒåÈçÏ£º
A1 DW 3 DUP( 2 DUP(1,2)) A2 DB ¡®5678H¡¯
µÚ 3 Ò³ ¹² 7 Ò³
ÖйúʯÓÍ´óѧ£¨»ª¶«£©ÏÖ´úÔ¶³Ì½ÌÓý
A3 DD ? L EQU $-A1
ÎÊ£ºA1¡¢A2¡¢A3ÔÚÊý¾Ý¶ÎÖи÷Õ¼Óü¸¸ö×Ö½Ú£¿LµÄÖµÊǶàÉÙ£¿Ëü±íʾʲôÒâÒ壿
A1Õ¼24¸ö×Ö½Ú A2Õ¼5¸ö×Ö½Ú A3Õ¼4¸ö×Ö½Ú LµÄֵΪ33 L±íʾµÄÒâÒ壺±äÁ¿A1¡¢A2¡¢A3ËùÕ¼µÄ×Ö½Ú×ÜÊý (1.5·Ö)
Îå¡¢³ÌÐòÉè¼ÆÌâ
ÔÚBUF¿ªÊ¼ÓÐÒ»¸ö×Ö½ÚÐÍÊý×飬¹²ÓÐ100¸öÔªËØ£¬ÀûÓûã±àÓïÑÔ±àдÍêÕûµÄ³ÌÐò£¬¼ÆËãÕâ¸öÊý×éÖиºÊýµÄ¸öÊý£¬²¢½«½á¹û´æÈëÄÚ´æCOUNTµ¥Ôª¡£
DATA SEGMENT BUF DB 100 DUP (?) COUNT DB 00 DATA ENDS
CODE SEGMENT
ASSUME CS£ºCODE£¬DS£ºDATA START£ºMOV AX£¬DATA MOV DS£¬AX
MOV SI£¬ OFFSET BUF MOV CX£¬100 CON£ºMOV AL£¬[SI]
TEST AL£¬80H JZ NEXT INC COUNT NEXT£ºINC SI LOOP CON
MOV AH£¬4CH INT 21H
CODE ENDS (ÏÂÒ»ÐÐ) END START
΢ÐͼÆËã»úÔÀí¼°Ó¦ÓÃÊÔÌâ
Ò»¡¢ Ìî¿Õ£º£¨Ã¿¿Õ1·Ö£¬¹²20·Ö£©
1£®Î¢ÐͼÆËã»úÊÇÓÉÓ²¼þϵͳºÍÈí¼þϵͳÁ½´ó²¿·Ö×é³ÉµÄ¡£ 2£®ÏµÍ³×ÜÏß°üÀ¨Êý¾Ý×ÜÏß¡¢ µØÖ·×ÜÏß¡¢ ¿ØÖÆ×ÜÏß¡£
µÚ 4 Ò³ ¹² 7 Ò³