CODE ENDS END BEGIN
19£®ÉèÔÚA¡¢BºÍCµ¥ÔªÖÐ·Ö±ð´æ·Å×ÅÈý¸öÊý£¬ÈôÈý¸öÊý¶¼²»ÊÇ0£¬ÔòÇó³öÈýÊýÖ®ºÍ²¢´æ·ÅÔÚDµ¥ÔªÖУ»ÈôÈý¸öÊýÖÐÓÐÒ»¸öΪ0£¬Ôò°ÑÆäÓàÁ½¸öµ¥ÔªÒ²Çå0¡£ÊÔ±àд´Ë³ÌÐò¡£ ½â:²Î¿¼³ÌÐòÈçÏÂ:
DATA SEGMENT
A DB ? B DB ?
C DB ? £»³ÌÐòÔËÐÐǰÐÞ¸ÄA¡¢BºÍCµ¥ÔªµÄÄÚÈÝ D DB ? DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA START: MOV AX,DATA
MOV DS,AX MOV AL,A CMP AL,00H JZ NEXT MOV AL,B CMP AL,00H JZ NEXT MOV AL,C CMP AL,00H JZ NEXT MOV AL,A ADD AL,B ADD AL,C MOV D,AL JMP NEXT1
NEXT: MOV A,00H
MOV B,00H
MOV C,00H NEXT1: MOV AH,4CH INT 21H
CODE ENDS
END START
20£®ÔÚÒÔDA1ΪÊ×µØÖ·µÄÄÚ´æÖÐÓÐ50¸öÎÞ·ûºÅ×Ö½ÚÊý£¬±àд³ÌÐòͳ¼ÆÆäÖÐËØÊýµÄ¸öÊý£¬½á¹ûÒÔÊ®½øÖÆÐÎʽÔÚÆÁÄ»ÉÏÏÔʾ¡£ÒªÇó·Ö±ðÓÃ×Ó³ÌÐòÍê³ÉËØÊý¸öÊýͳ¼Æ¼°Ê®½øÖÆÊýÏÔʾ¡£ ½â:·ÖÎö: ËØÊý£¬ÓÖ³ÆÖÊÊý£¬ÊÇÕâÑùµÄÕûÊý:Ëü³ýÁËÄܱíʾΪËü×Ô¼ººÍ1µÄ³Ë»ýÒÔÍ⣬²»ÄܱíʾΪÈÎºÎÆäËûÁ½¸öÕûÊýµÄ³Ë»ý¡£ÅжÏÒ»¸öÕûÊýÊÇ·ñÎªËØÊýµÄ·½·¨:ÓÃÕâ¸öÊý³ýÒÔ2µ½Ëü±¾Éí£¬Èç¹ûÖ»Äܱ»Ëü±¾ÉíÕû³ýÔòÎªËØÊý¡£²Î¿¼³ÌÐòÈçÏÂ: DATA SEGMENT
TTL DB 'TOTAL NUMBER OF PRIME NUMBER(S): $' TEN DW 10
PCOUNT DB 0
DA1 DB 1,2,3,4,5,6,7,8,9,10
DB 11,12,13,14,15,16,17,18,19,20 DB 21,22,23,24,25,26,27,28,29,30 DB 31,32,33,34,35,36,37,38,39,40 DB 41,42,43,44,45,46,47,48,49,50 DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA MAIN: MOV AX,DATA
MOV DS,AX LEA SI,DA1
MOV DI,50 ;Óà DI ×öÖ÷Ñ»·¼ÆÊýÆ÷ CLD
M_1: LODSB ;´ÓDS:SIȡһ¸öÎÞ·ûºÅÕûÊýµ½AX
CALL ISPRIME JNC M_2 INC PCOUNT
CALL PRINTAX ;ÊÇËØÊýÔòÊä³öAXÀïµÄÊ®½øÖÆÊý MOV DL,9 ;ÓÃÖÆ±í·û·Ö¸ô CALL PUTC M_2: DEC DI
JNZ M_1 ;50¸öÊýÍê³É£¿
MOV DX,OFFSET TTL ;Êä³öËØÊý×ÜÊý CALL PUTS
MOV AL,PCOUNT ;Êä³öËØÊý×ÜÊý XOR AH,AH CALL PRINTAX MOV AH,4CH INT 21H ISPRIME PROC
CBW TEST AX,1 ;ÊÇ·ñΪżÊý
JNZ IP_1 ;ÈôÊÇżÊýÖ±½Ó·µ»Ø IP_0: CLC ;CF=0±íʾÊǺÏÊý
RET
IP_1: CMP AX,1 ;1»ò0?
JBE IP_0 ;²»ÊÇËØÊý CMP AX,3
JE IP_4 ;3ÊÇËØÊýÖ±½Ó·µ»Ø MOV CX,3 ;´Ó3¿ªÊ¼Ñ»· IP_2: MOV BX,AX ;Áô¸ö¸±±¾ÔÚBXÀï
XOR DX,DX ;Ϊ³ý·¨Çå³ýDX DIV CX
MOV AX,BX ;»Ö¸´AXÀïµÄÊý OR DX,DX ;ÓàÊýΪ0·ñ JZ IP_0 ;Ϊ0ΪºÏÊý
ADD CX,3 ;±¾À´ÊdzýÊý¼Ó2£¬Ö»³¢ÊÔ³ýÊýÎªÆæÊýµÄÇé¿ö¼´¿É£¬Ö±½Ó¼Ó3ÊÇΪÁ˱ȽÏCXÊÇ·ñÒÔ¼°µ½ÁËAX-1
CMP CX,AX
JB IP_3 ;ÈôCX¸ßÓÚ»òµÈÓÚAX£¬ËµÃ÷³ýÊýÒѾ³¢ÊÔµ½ÁËN-1£¬AXÊÇËØÊý£¬Ö±½Ó·µ»Ø£¬·ñÔò¼ÌÐøµ½IP_3
IP_4: STC ;CF=1±íʾÊÇËØÊý
RET IP_3: DEC CX ;CX-1²ÅÊÇÕæÕýϸöÒª³¢ÊԵijýÊý
JMP IP_2 ;¼ÌÐøÊÔ ISPRIME ENDP PUTS PROC MOV AH,9 INT 21H RET
PUTS ENDP PUTC PROC MOV AH,2 INT 21H RET
PUTC ENDP PRINTAX PROC
XOR DX,DX DIV TEN MOV CX,AX OR CX,DX ;ÈôÉÌÓëÓàÊý¶¼Îª0Ôò½áÊøµÝ¹é JZ P_1
PUSH DX ;Áô´æDXÖеÄÓàÊýÒÔÔڵݹéºóÊä³ö CALL PRINTAX ;µÝ¹é
POP DX ;´Ó×î¸ßλ¿ªÊ¼»Ö¸´ÓàÊý
ADD DL,'0' ;ÔÀ´µÄÊä³öÓï¾äADDһϾͺÃÁË CALL PUTC P_1: RET
PRINTAX ENDP CODE ENDS END MAIN
µÚÎåÕÂ
1£®Ñ¡ÔñÌâ
£¨1£©¹Øµô¹¤×÷µçÔ´ºó£¬ÆäÖд洢µÄÊý¾ÝÁ¢¼´¶ªÊ§µÄ´æ´¢Æ÷ÊÇ ¡£ A£®Ó²ÅÌ B£®ROM C£®¹âÅÌ D£®RAM £¨2£©ÏÂÃæËµ·¨ÕýÈ·µÄÊÇ ¡£ A£®EPROMÊDz»ÄܸÄдµÄ´æ´¢Æ÷
B£®EPROMÊÇ¿ÉÒÔ¸ÄдµÄ£¬Òò´ËËüÒ²ÊÇÒ»ÖÖËæ»ú´æÈ¡´æ´¢Æ÷
C£®EPROMÖ»ÄܸÄдһ´Î D£®EPROM¿ÉÒÔ¸Äд£¬µ«Ëü²»ÊÇËæ»ú´æÈ¡´æ´¢Æ÷ £¨3£©Ä³DRAMоƬÓÐ8ÌõµØÖ·Ïߣ¬ÒòЩ¿ÉÒÔÍÆ¶ÏÆä´æ´¢ÈÝÁ¿²»³¬¹ý ¡£ A£®512¸ö´æ´¢µ¥Ôª B£®65536¸ö´æ´¢µ¥Ôª C£®8192¸ö´æ´¢µ¥Ôª D£®256¸ö´æ´¢µ¥Ôª
£¨4£©¶ÔÓÚµØÖ·×ÜÏßΪ20λµÄ΢´¦ÀíÆ÷À´Ëµ£¬ÆäÖ±½ÓѰַµÄ·¶Î§¿É´ï ¡£ A£®16MB B£®1MB C£®64MB D£®1GB
£¨5£©ÔÚÑÐÖÆÄ³Ò»¼ÆËã»úÓ¦ÓÃϵͳµÄ¹ý³ÌÖУ¬´æ´¢Æä¼à¿Ø³ÌÐò¿ÉÑ¡Óà ¡£ A£®RAM B£®EPROM C£®PROM D£®ROM £¨6£©ÏÂÁÐËÄÌõÐðÊöÖУ¬ÕýÈ·µÄÒ»ÌõÊÇ ¡£
A£®Ó²Å̺͹âÅ̶¼ÊôÓÚÍâ´æ´¢Æ÷ B£®¼ÆËã»úµÄÍâ´æ±ÈÄÚ´æ´æÈ¡ËÙ¶È¿ì C£®ÐéÄâ´æ´¢Æ÷ÊôÍâ´æ´¢Æ÷
D£®¼ÆËã»úϵͳÖеÄÈκδ洢Æ÷ÔڶϵçÇé¿öÏ£¬Ëù´æÐÅÏ¢¶¼²»»á¶ªÊ§ £¨7£©³£ÓõÄÐéÄâ´æ´¢Æ÷ѰַϵͳÓÉ Á½¼¶´æ´¢Æ÷×é³É¡£ A£®Cache-Íâ´æ B£®Cache-Cache C£®Cache-Ö÷´æ D£®Ö÷´æ-Íâ´æ
£¨8£©ÏÂÁйØÓÚÍâ´æ¡¢ÄÚ´æÒÔ¼°CacheµÄ²»ÕýÈ·µÄ˵·¨ÊÇ ¡£ A£®ÄÚ´æÍ¨³£ÓÉRAM¡¢ROMоƬ×é³É B£®Cache¿ÉÒÔÔÚCPUÄÚ²¿»òÍⲿ
C£®CacheÖ»Õ¼Óò¿·ÖÄÚ´æ¿Õ¼ä D£®Íâ´æµÄÐÅÏ¢±ØÐëµ÷ÈëÄÚ´æ²ÅÄܱ»CPUÖ´ÐÐ £¨9£©ÐéÄâ´æ´¢Æ÷ÓÉ ÊµÏÖ¡£
A£®Ó²¼þºÍÓû§±à³Ì B£®Ó²¼þºÍ²Ù×÷ϵͳ C£®ROM-BIOS D£®Óû§±à³ÌºÍ²Ù×÷ϵͳ
£¨10£©²»ÄÜÓëCPU×ÜÏßÖ±½ÓÏàÁ¬µÄ´æ´¢Æ÷ÊÇ ¡£ A£®ÄÚ´æ´¢Æ÷ B£®ROM C£®Ó²ÅÌ D£®RAM ½â£º²Î¿¼´ð°¸£º ÌâºÅ £¨1£© £¨2£© £¨3£© £¨4£© £¨5£© ´ð°¸ D D B B B ÌâºÅ £¨6£© £¨7£© £¨8£© £¨9£© £¨10£© ´ð°¸ A D B B C 2£®¼ò´ðÌâ
£¨1£©¼òÊöSRAMоƬÓëDRAMоƬµÄ¹²Í¬µãÓ벻ͬµã¡£
´ð£ºSRAMÓëDRAMµÄ¹²Í¬µã£º¶¼ÊôÓÚËæ»ú´æÈ¡´æ´¢Æ÷£¬¾ßÓÐÒ×ʧÐÔ¡£ SRAMÓëDRAMµÄ²»Í¬µã£ºSRAMÀûÓÃË«ÎÈ̬´¥·¢Æ÷µç·±£´æÐÅÏ¢£¬¼¯³É¶È±ÈDRAMµÍ£¬¹¦ºÄ±ÈDRAM´ó£»DRAMÀûÓÃMOS¹ÜÕ¤¼«ºÍÔ´¼«Ö®¼äµÄ¼«¼äµçÈÝC±£´æÐÅÏ¢£¬ÐèҪˢе緱£Ö¤ÐÅÏ¢½Ï³¤Ê±¼ä±£´æ¡£
£¨2£©ÐðÊöROMоƬµÄ³£¼û·ÖÀ࣬¸÷ÖÖROMоƬµÄÌØµã¼°ÆäÊÊÓó¡ºÏ¡£