8282£¯8283»ò74LS373£© 8286£¯8287»ò74LS245£© Ë«ÏòÊý¾Ý×ÜÏßÊÕ·¢Æ÷£¨2Ƭ? 23:49
15. ʱÖÓ²úÉúÆ÷8284AÓë8088CPUÏàÁ¬Ê±£¬ÊäÈëµÄ¾§ÕñƵÂÊΪ14.31818MHz´ÓÊä³ö¶Ë¿ÉÒÔ²úÉúÄÄЩʱÖÓÐźţ¿ËûÃÇµÄÆµÂÊ·Ö±ðÊǶàÉÙ£¿8284AÓë8086-2ÏàÁ¬Ê±£¬¾§ÕñƵÂÊΪ8MHZÔòÊä³öµÄOSCºÍCLK86-2ÐÅºÅµÄÆµÂÊ·Ö±ðÊǶàÉÙ£¿ ´ð£º
16. 8086×î´óģʽÅäÖõç·ÖУ¬8288×ÜÏß¿ØÖƵÄÖ÷Òª¹¦ÄÜÊÇʲô£¿MEMR¡¢MEMW¡¢IOR ºÍIOWÐźÅÏ൱ÓÚ×îСģʽÖÐÄÄЩÐźŵÄ×éºÏ£¿
´ð£º
17. ʲô½Ð×ÜÏßÖÜÆÚ£¿Ò»¸ö×ÜÏßÖÜÆÚÒ»°ãÐèÒª¼¸¸öʱÖÓÖÜÆÚ£¿Èô8086-2µÄʱÖÓÆµÂÊΪ8MHz£¬ËüÿÃë¿ÉÖ´ÐжàÉÙÌõÖ¸Á
´ð£º×ÜÏßÖÜÆÚͨ³£Ö¸µÄÊÇCPUÍê³ÉÒ»´Î·ÃÎÊMEM»òI/O¶Ë¿Ú²Ù×÷ËùÐèÒªµÄʱ¼ä¡£Ò»¸ö×ÜÏßÖÜÆÚÓɼ¸¸öʱÖÓÖÜÆÚ×é³É¡£
8086µÄ»ù±¾×ÜÏßÖÜÆÚΪ4¸öʱÖÓÖÜÆÚ Ã¿Ãë¿ÉÖ´ÐеÄÖ¸Áî
18. 8086¹¤×÷ÓÚ×îСģʽ£¬Ö´Ðд洢Æ÷¶Á×ÜÏßÖÜÆÚ£¬T1~T4ÖÜÆÚÖÐÖ÷ÒªÍê³ÉÄÄЩ¹¤×÷£¿ ´ð£ºT1ÖÜÆÚ£ºÊä³ö20λµØÖ·Ðźţ¬ALEµØÖ·Ëø´æÔÊÐíÐÅºÅ¸ßµçÆ½ÓÐЧ T2ÖÜÆÚ£º¸ß4λÊä³ö״̬Ðźţ¬µÍ16λ¸ß×è̬£¬×¼±¸½ÓÊÕÊý¾Ý T3ÖÜÆÚ£º¸ß4λά³Ö״̬Ðźţ¬µÍ16λ½ÓÊÕÊý¾Ý T4ÖÜÆÚ£º¶Á×ÜÏßÖÜÆÚ½áÊø
5
µÚÈýÕÂ
1£®·Ö±ðÖ¸³öÏÂÁÐÖ¸ÁîÖеÄÔ´²Ù×÷ÊýºÍÄ¿µÄ²Ù×÷ÊýµÄѰַ·½Ê½£º (1)MOV SI£¬200 Á¢¼´Ñ°Ö· ¼Ä´æÆ÷Ѱַ
(2)MOV CX£¬DATA[SI] ¼Ä´æÆ÷Ïà¶ÔѰַ ¼Ä´æÆ÷Ѱַ (3)ADD AX£¬[BX][DI] »ùÖ·±äַѰַ ¼Ä´æÆ÷Ѱַ (4)AND AX£¬BX ¼Ä´æÆ÷Ѱַ ¼Ä´æÆ÷Ѱַ (5)MOV [SI]£¬AX ¼Ä´æÆ÷Ѱַ ¼Ä´æÆ÷¼ä½ÓѰַ (6)PUSHF ¼Ä´æÆ÷Ѱַ ¼Ä´æÆ÷¼ä½ÓѰַ 2£®Ð´³öÒÔÏÂÖ¸ÁîÖÐÄÚ´æ²Ù×÷ÊýµÄËùÔÚµØÖ·¡£ (1)MOV AL£¬[BX+5] DS (2)MOV [BP+5]£¬AX SS (3)INC BYTE PTR[SI+3] DS (4)MOV DL£¬ES:[BX+DI] ES (5)MOV BX£¬[BX+SI+2] DS
3£®Éè¶ÑÕ»Ö¸ÕëSPµÄ³õֵΪ2000H£¬AX=3000H£¬BX=5000H£¬ÊÔÎÊ£º (1)Ö´ÐÐÖ¸ÁîPUSH AXºóSP=£¿
´ð£ºÖ´ÐÐÖ¸ÁîPUSH AXºó (SP)=2000H-2=1FFEH;
(2)ÔÙÖ´ÐÐPUSH BX¼°POP AXºóSP=£¿ AX=£¿ BX=£¿
´ð£ºÔÙÖ´ÐÐPUSH BX¼°POP AXºó (SP)=1FFEH, (AX)=5000H, (BX)=5000H 4£®ÒªÏëÍê³É°Ñ[2000H]ËÍ[1000H]ÖУ¬ÓÃÖ¸Á
MOV[1000H]£¬[2000H]ÊÇ·ñÕýÈ·£¿Èç¹û²»ÕýÈ·£¬Ó¦ÓÃʲô·½·¨£¿ ´ð£º°Ñ[2000H]ËÍ[1000H]ÖУ¬ÓÃÖ¸Áî MOV [1000H]£¬[2000H]²»ÕýÈ·£¬Ó¦¸ÄΪ£ºMOV AX,[2000H] MOV [1000H],AX
5£®¼ÙÈçÏë´Ó100ÖмõÈ¥ALÖеÄÄÚÈÝ£¬ÓÃSUB100£¬ALÊÇ·ñÕýÈ·£¿Èç¹û²»ÕýÈ·£¬Ó¦ÓÃʲô·½·¨£¿
´ð£ºÏë´Ó100ÖмõÈ¥ALÖеÄÄÚÈÝ£¬ÓÃSUB 100£¬AL²»ÕýÈ·£¬ Ó¦¸ÄΪ£º MOV BL,100 SUB BL,AL
6£®ÓÃÁ½ÖÖ·½·¨Ð´³ö´Ó88H¶Ë¿Ú¶ÁÈëÐÅÏ¢µÄÖ¸Áî¡£ÔÙÓÃÁ½ÖÖ·½·¨Ð´³ö´Ó42H¿ÚÊä³ö100HµÄÖ¸Áî¡£
´ð£º ¶ÁÈ룺 £¨1£©IN AL£¬88H £¨2£©MOV DX£¬0088H IN AL£¬ DX Êä³ö£º £¨1£©MOV AL£¬100H OUT 42H£¬AL £¨2£©MOV DX£¬0042H MOV AL£¬100H OUT DX£¬AL
7£®¼ÙÈçAL=20H£¬BL=10H£¬µ±Ö´ÐÐCMP AL£¬BLºó£¬ÎÊ£º
(1)ÈôAL£¬BLÖÐÄÚÈÝÊÇÁ½¸öÎÞ·ûºÅÊý£¬±È½Ï½á¹ûÈçºÎ£¿Ó°ÏìÄö±ê־λ£¿ ´ð£º´Ëʱ AL>BL£¬ CF=0£¬ZF=0
(2)ÈôAL£¬BLÖÐÄÚÈÝÊÇÁ½¸öÓзûºÅÊý£¬½á¹ûÓÖÈçºÎ£¿Ó°ÏìÄö±ê־λ£¿ ´ð£º´Ëʱ AL>BL£¬ OF=0£¬SF=0
6
µÚËÄÕÂ
1£®±àÒ»¸ö³ÌÐò£¬Í³¼ÆÒ»¸ö8λ¶þ½øÖÆÊýÖеÄΪ¡°1¡±µÄλµÄ¸öÊý¡£ ´ð°¸£º¼ÙÉèALÖдæ·ÅµÄÊÇÐèÒªµÄ8λÊý xor ah,ah mov cx,8
loop1: sal al,1 ;×óÒÆ adc ah,0 ;¼ÓCF loop loop1
×îÖÕ½á¹ûAHÖÐΪ1µÄ¸öÊý¡£ 2£®±àÒ»¸ö³ÌÐò£¬Ê¹·ÅÔÚDATA¼°DATA+1µ¥ÔªµÄÁ½¸ö8λ´ø·ûºÅÊýÏà³Ë£¬³Ë»ý·ÅÔÚDATA+2¼°DATA+3µ¥ÔªÖÐ(¸ßλÔÚºó)¡£
--ÏÈÔËÐÐÈçÏÂsql£¬½¨Á¢Ò»¸öºÏ²¢º¯Êý
create function fmerg(@company varchar(200)) returns varchar(8000) as begin
declare @str varchar(8000) set @str=''
select @str=@str+','+jobname from zhaopin where company=@company set @str=right(@str,len(@str)-1) return(@str) End go
--µ÷ÓÃ×Ô¶¨Ò庯ÊýµÃµ½½á¹û
select distinct company,dbo.fmerg(company) from zhaopin
3£®ÈôÔÚ×Ô1000Hµ¥Ôª¿ªÊ¼ÓÐÒ»¸ö100¸öÊýµÄÊý¾Ý¿é£¬Òª°ÑËü´«Ë͵½×Ô2000H¿ªÊ¼µÄ´æ´¢ÇøÖÐÈ¥£¬ÓÃÒÔÏÂÈýÖÖ·½·¨£¬·Ö±ð±àÖÆ³ÌÐò£º (1)²»ÓÃÊý¾Ý¿é´«ËÍÖ¸Á
(2)Óõ¥¸ö´«Ë͵ÄÊý¾Ý¿é´«ËÍÖ¸Á (3)ÓÃÊý¾Ý¿é³É×é´«ËÍÖ¸Áî¡£ ½â£º
£¨1£© LEA ST, 1000H LEA DI, 2000H MOV CX, 100 L1: MOV AX, [SI] MOV [DI], AX LOOP L1 HLT
(2) LEA SI, 1000H LEA DI, 2000H MOV CX, 100 CLD L1£º MOVSB
7
LOOP L1 HLT
(3) LEA ST, 1000H LEA DI, 2000H MOV CX, 100 CLD
REP MOVSB HLT
4£®ÀûÓñäÖ·¼Ä´æÆ÷£¬±àÒ»¸ö³ÌÐò£¬°Ñ×Ô1000Hµ¥Ôª¿ªÊ¼µÄ100¸öÊý´«Ë͵½×Ô1070H¿ªÊ¼µÄ´¢´æÇøÖÐÈ¥¡£ ½â£º
LEA SI, 1000H LEA DI, 1070H MOV CX, 100 CLD
REP MOVSB HLT
5£®ÒªÇóͬÌâ4£¬Ô´µØÖ·Îª2050H£¬Ä¿µÄµØÖ·Îª2000H£¬Êý¾Ý¿é³¤¶ÈΪ50¡£ ½â£º
LEA SI, 2050H
LEA DI, 2000H MOV CX, 50 CLD
REP MOVSB HLT
6£®±àÒ»¸ö³ÌÐò£¬°Ñ×Ô1000Hµ¥Ôª¿ªÊ¼µÄ100¸öÊý´«ËÍÖÁ1050H¿ªÊ¼µÄ´æ´¢ÇøÖÐ(×¢Ò⣺Êý¾ÝÇøÓÐÖØµþ)¡£ ½â£º
LEA SI, 1000H LEA DI, 1050H ADD SI, 63H ADD DI, 63H MOV CX, 100 STD
REP MOVSB HLT
7£®ÔÚ×Ô0500Hµ¥Ôª¿ªÊ¼£¬´æÓÐ100¸öÊý¡£ÒªÇó°ÑËüÃÇ´«Ë͵½1000H¿ªÊ¼µÄ´æ´¢ÇøÖУ¬µ«ÔÚ´«Ë͹ý³ÌÖÐÒª¼ì²éÊýµÄÖµ£¬Óöµ½µÚÒ»¸öÁã¾ÍÍ£Ö¹´«ËÍ¡£ ½â£º
LEA SI, 0500H
LEA DI, 1000H MOV CX, 100 N1: MOV AL, [SI] CMP AL, 0
8