±±¹¤´óµ¥Æ¬»úÆÚÄ©¸´Ï°ÌâA4Ò»Ö½¿ª - ͼÎÄ ÏÂÔØ±¾ÎÄ

ORG 500H MOV A,#0 MOV B,#0 MOV R0,#30H MOV DPTR,#TAB

SUBB A,@R1 POP ACC

JC L4 £¨ÉýÐò¸ÄΪJNC£© INC R0 INC R1

CJNE R1,#36H,L3 AJMP L5 XCH A,@R1 INC R0 INC R1 AJMP L3

¡ûASCTAB

MOV A, R0 ; A¡ûÏîÊý ANL A, #0FH ; ÆÁ±Î¸ß4λ MOVC A, @A+DPTR ; A¡û½á¹û

MOV R0, A ; ËÍ»ØR0

SJMP $

ASCTAB: DB ¡®0¡¯, ¡®1¡¯ ?, ¡®9¡¯ END

2£©²ÉÓÃPC×÷»ùÖ·

ORG 1000H

MOV A, R0 ; A¡ûÏîÊý

L1: CLR A

MOVC A,@A+DPTR MOV @R0,A

MOV R0,#30H INC DPTR INC R0

CJNE R0,#40H,L1

L4:

MOV @R0,A DB ¡®A¡¯, ¡®B¡¯ ? , ¡®F¡¯

CLR A L2: ADD A,@R0 PUSH ACC CLR A ADDC A,#0 MOV 42H,A POP ACC INC R0

CJNE R0,#40H,L2 MOV 40H,A

MOV R0,40H MOV R1,42H

MOV A,40H MOV B,#3 DIV AB

END 3. ÅÅÐò£¨½µÐò£© AJMP 100H

ORG 30H

TAB: DB 4,3,6,5,9,1

ORG 100H MOV R0,#30H

MOV DPTR,#TAB L1: CLR A

MOVC A,@A+DPTR MOV @R0,A INC R0 INC DPTR

CJNE R0,#36H,L1

MOV R3,#0 L2: MOV R0,#30H MOV R1,#31H L3: MOV A,@R0

PUSH ACC

L5: INC R3 CJNE R3,#6,L2

END

4. Çó×î´óÖµ£º AJMP 100H

ORG 30H LEN EQU 30H+6

BLOCK: DB 41,6,3,10,7,255 ORG 100H MOV R0,#30H

MOV DPTR,#BLOCK

L1: CLR A

MOVC A,@A+DPTR MOV @R0,A INC R0 INC DPTR

CJNE R0,#LEN,L1

MOV R0,#30H

MOV R1,#0 L2: MOV A,R1 SUBB A,@R0 JNC MAX£¨Çó×îСֵ¸ÄΪJC MIN£© MOV A,@R0 MOV R1,A INC R0

CJNE R0,#LEN,L2

MAX£¨MIN£©: INC R0 CJNE R0,#LEN,L2

L3: NOP END

Àý£ºÒÑÖªR0ÖÐÓÐ1¸ö0-FµÄÊý£¬±à³Ì½«Æä±ä»»³ÉASCIIÂë¡£

Çó½â£º£¨1£©²ÉÓÃDPTR×÷»ùÖ· ORG 3000H

MOV DPTR, #ASCTAB ; DPTR

ANL A, #0FH ; ÆÁ±Î¸ß4λ

ADD A, #data ; A¡ûA+data

MOVC A, @A+PC ; ²é±í

MOV R0, A ; ´æ½á¹û SJMP $

ASCTAB: DB ¡®0¡¯, ¡®1¡¯ ?, ¡®9¡¯

DB ¡®A¡¯, ¡®B¡¯ ? , ¡®F¡¯ END

×¢Ò⣺data=²é±íÖ¸ÁîºÍ±íʼַ¼äµÄÖ¸Áî×Ö½ÚÊý=03H 2.×Ó³ÌÐòÉè¼Æ

¡¤×Ó³ÌÐòʼַӦÒÔ×Ó³ÌÐòÈÎÎñ¶¨Ãû ÀýÈ磺ÑÓʱ³ÌÐò¿ÉÓà DELAY ¡¤²ÎÊý´«µÝ

Èë¿Ú²ÎÊý£º×Ó³ÌÐòËùÐèµÄԭʼÊý¾Ý£¬ÈçSIN(X)ÖеÄX

³ö¿Ú²ÎÊý£º×Ó³ÌÐòÖ´ÐкóµÄ½á¹ûÊý¾Ý£¬ÈçSIN(0.5)µÄÖµ

¡¤Ö÷³ÌÐòÖеÄCALLÖ¸Áî×Ô¶¯°Ñ¶ÏµãѹÈë¶ÑÕ»£¬

×Ó³ÌÐòÖеÄRETÖ¸Áî×Ô¶¯°Ñ¶ÏµãµØÖ·´Ó¶ÑÕ»Öлָ´µ½PC£»

¡¤×Ó³ÌÐòÖÐӦʹÓÃÏà¶Ô×ªÒÆÖ¸ÁÒÔÉú³É¸¡¶¯´úÂë

Àý£ºÒÑÖª MDA=a ºÍ MDB=b£¬±à³ÌÇóC=a2+b2£¬²¢ËÍ»ØMDC

Çó½â£ºÀûÓÃÀÛ¼ÓÆ÷A´«ËͲÎÊý¡£ ORG 1000H MDA DATA 20H MDB DATA

21H

MDC DATA 22H MOV A, MDA ; A¡ûa(Èë²Î)

ACALL SQR ; Çóa2 MOV R1, A ; R1¡û a2

MOV A, MDB ; A¡ûb ACALL SQR ; Çób2 ADD A, R1 ; A¡ûa2+b2

MOV MDC, A ; ´æÈëMDC SJMP $

SQR: ADD A, #01H ; ÐÞÕýA

MOVC A, @A+PC ; ²é±íRET

SQRTAB: DB 0, 1, 4, 9, 16

DB 25, 36, 49, 64, 81 END

µÚ2µ¥Ôª ½á¹¹ºÍÔ­Àí

P3.0£¬1¡ª¡ªRXD£¬TXD£¨´®ÐÐÊäÈ룬Êä³ö¿Ú£© 0000H-0002Hµ¥Ôª:Éϵçʱ,³ÌÐò¼ÆÊýÆ÷PCËùÖ¸ÏòµÄµ¥Ôª£» P3.2£¬3¡ª¡ªINT0,1£¨ÍⲿÖжÏ0,1£© 0003H-000AHµ¥Ôª£ºÍⲿÖжÏ/INT0µÄÈë¿ÚµØÖ·£» P3.4£¬5¡ª¡ªT0£¬T1£¨¶¨Ê±Æ÷0ÍⲿÊäÈ룩 (Á½¸ö16λ¿É±à³Ì000BH-0012Hµ¥Ôª£º¶¨Ê±Æ÷T0µÄÒç³öÖжÏÈë¿ÚµØÖ·£» ¶¨Ê±/¼ÆÊýÆ÷£¬·Ö±ðÓÉÁ½¸ö8λ¼Ä´æÆ÷Æ´×°¶ø³É¡£×î´ó¼ÆÊýֵΪ0013H-001AHµ¥Ôª£ºÍⲿÖжÏ/INT1µÄÈë¿ÚµØÖ·£» 216-1,¼´65535¡£) 001BH-0022Hµ¥Ôª£º¶¨Ê±Æ÷T1µÄÒç³öÖжÏÈë¿ÚµØÖ·£» P3.6£¬7¡ª¡ªWR£¬RD£¨ÍⲿÊý¾Ý´æ´¢Æ÷д¡¢¶Á¿ØÖÆ£© 0023H-002AHµ¥Ôª£º´®ÐпڽÓÊÕ¡¢´«Ë͵ÄÖжÏÈë¿ÚµØÖ·¡£ XTAL1£¬2(19,18) :Õñµ´Æ÷ÊäÈ룬³ö¶Ë£¨µ¥Æ¬»úÄÚ²¿·´Ïò·Å´óÆ÷×¢£ºÖжÏÏìÓ¦ºó£¬ÓÉÓ²¼þ¿ØÖÆPC×Ô¶¯×ªµ½¸÷ÖжÏÇøµÄÊ×µØÖ·¡£µÄÊäÈ룬³ö¶Ë£© µ«Ã¿¸öÖжÏÇøÖ»ÓÐ8¸öµ¥Ôª£¬ÎÞ·¨·ÅÖÃÍêÕûµÄÖжϴ¦Àí×Ó³ÌÐò£¬ALE/PROG (30):Íⲿ´æ´¢Æ÷µØÖ·Ëø´æÔÊÐí/±à³ÌÏß·ÃÎÊÍⲿ´æ´¢Æ÷£¬CPUÔÚP0¿ÚÊä³öƬÍâ´æ´¢Æ÷µÍ8λµØÖ·µÄͬʱ£¬ÔÚ¸ÃÏßÉÏÊä³öÒ»¸ö¸ßµçƽÂö³å£¬ÆäϽµÑØÓÃÓÚ¿ØÖƵØÖ·Ëø´æ£»²»·ÃÎÊÆ¬Íâ´æ´¢Æ÷ʱ£¬CPU×Ô¶¯ÔÚ¸ÃÏßÉÏÊä³ö¿ÉÓÃ×÷ÍⲿʱÖÓÔ´µÄÂö³åÐòÁУ¬ÆµÂÊΪÕñµ´Æ÷ƵÂʵÄ1/6¡£ EA/VPP(31) :ÔÊÐí·ÃÎÊÆ¬Íâ³ÌÐò´æ´¢Æ÷/±à³ÌµçÔ´Ïß EA½Ó¸ßµçλ,·ÃÎÊÄÚ²¿³ÌÐò´æ´¢Æ÷ PSEN(29) :ƬÍâROMѡͨÏß¡£RST/VPD(9): ¸´Î»/±¸ÓõçÔ´Ïß¡£ ÁíÍ⣺¸´Î»Ê±¸ßµçλÓÐЧ¡£

³ÌÐò״̬¼Ä´æÆ÷£ºPSW ÊÇÒ»¸ö8λ±êÖ¾¼Ä´æÆ÷£¬ÓÃÀ´´æ·ÅÖ¸

ÁîÖ´ÐкóµÄÓйØ×´Ì¬¡£

PSWµÄ¸ñʽ£ºCY AC F0 RS1 RS0 OV ¿Õ P P¡ª¡ªÆæÅ¼±ê־루1¸öÊýΪ˫P=0£© F0 ¡ª¡ªÓû§±ê־λ(Óû§¸ù¾Ý³ÌÐòÖ´ÐеÄÐèҪͨ¹ý´«ËÍÖ¸ÁîÈ·¶¨£© RS1 RS0¡ª¡ª¼Ä´æÆ÷Ñ¡Ôñ루ÓÃÓÚ¾ö¶¨8051µÄ8¸ö8λ¹¤×÷¼Ä´æÆ÷R0~R7ÔÚRAMÖеÄʵ¼ÊÎïÀíµØÖ·£© RS1 RS0¶Ô¹¤×÷¼Ä´æÆ÷µÄÑ¡Ôñ00¶ÔÓ¦00-07HÒÔ´ËÀàÍÆ IP¡ª¡ªÖжÏÓÅÏȼ¶¼Ä´æÆ÷ IE¡ª¡ªÖжÏÔÊÐí¼Ä´æÆ÷ TMOD¡ª¡ª¼ÆÊýÆ÷·½Ê½¼Ä´æÆ÷ TCON¡ª¡ª¼ÆÊýÆ÷¿ØÖƼĴæÆ÷ SCON¡ª¡ª´®ÐпڿØÖƼĴæÆ÷ SBUF¡ª¡ª´®ÐпÚÊý¾Ý»º³åÆ÷ PCON¡ª¡ªµçÔ´¿ØÖƼĴæÆ÷ ´æ´¢Æ÷·ÖÀà ³ÌÐò´æ´¢Æ÷£º

ÄÚ²¿£¨/EA=1,£©4K;Íⲿ£¨/EA=0£©£¬/PSEN=0£¬60K; µØÖ·£º0000H¡ªFFFFH£¬64Kµ¥Ôª;ʹÓÃMOVCÖ¸Áî Êý¾Ý´æ´¢Æ÷£º

ÄÚ²¿RAM£¨00H¡ª7FH, µÍ128B; 80H¡ªFFH, ¸ß128B£© ÍⲿRAM£¨0000H¡ª¡ªFFFFH£¬64Kµ¥Ôª£© ¿ØÖÆÐźţº/RD»ò/WRÓÐЧ£¨=0£© ʹÓüÆÊýÆ÷£ºDPTR ʹÓÃÖ¸ÁÄÚ²¿RAMÓÃMOV£»ÍⲿRAMÓÃMOVX

³ÌÐò´æ´¢Æ÷ºÍÊý¾Ý´æ´¢Æ÷ʹÓöÀÁ¢µÄÁ½¸öµØÖ·¿Õ¼ä¡£ÓÉ/PSENºÍ/RD£¨/WR£©Çø·Ö¡£ ³ÌÐò´æ´¢Æ÷ROM

´æ·Å³ÌÐò´úÂëºÍ±í¸ñÊý¾Ý£¬64KB£¬µØÖ·Ö¸ÕëÊÇ16λPC¡£×¢Òâ6¸öÌØÊâµÄµ¥Ôª£º

±à³Ìʱ±ØÐëÔÚÖжÏÈë¿ÚÇø·ÅÖÃÒ»ÌõÎÞÌõ¼þ×ªÒÆÖ¸Á½«³ÌÐòÒýµ¼µ½ÕæÕýµÄÖжϴ¦Àí³ÌÐòµÄʵ¼ÊÈë¿ÚλÖᣠ¸´Î»²Ù×÷ ¸´Î»µÄÖ÷Òª¹¦ÄÜ£º°ÑPC³õʼ»¯Îª0000H£¬Ê¹CPU´Ó0000Hµ¥Ôª¿ªÊ¼Ö´ÐгÌÐò£»½â³ýËøËÀºÍ´íÎ󣻸´Î»²»Ó°ÏìÄÚ²¿RAM״̬¡£ ¸´Î»ºóµÄÄÚ²¿¼Ä´æÆ÷״̬ SP=07H P0-P3=FFH £»ÆäÓàÈ«ÖÃÁã¡£ P0(39~32)£¬8λ˫ÏòÈý̬I/O¿Ú£¬ÓнϴóµÄ¸ºÔØÄÜÁ¦¡£¢Ù8051²»´øÆ¬Íâ´æ´¢Æ÷ʱ£¬ÎªÍ¨ÓÃI/O¿Ú£¬´«ËÍÊäÈë/Êä³öÊý¾Ý¡£¢Ú´øÆ¬Íâ´æ´¢Æ÷²¢·ÃÎÊʱ£¬ÏÈ´«Ë͵Í8λµØÖ·ºó´«ËÍÊý¾Ý¡£ P1(1~8)£¬8λ׼˫ÏòI/O¿Ú£¬ÓÃÓÚ´«ËÍÊäÈë/Êä³öÊý¾Ý¡£8λ׼˫ÏòI/O¿Ú¡£ P2(21~28),¢Ù8051²»´øÆ¬Íâ´æ´¢Æ÷ʱ£¬ÎªÍ¨ÓÃI/O¿Ú£¬´«ËÍÊäÈë/Êä³öÊý¾Ý¡£ ¢Ú´øÆ¬Íâ´æ´¢Æ÷²¢·ÃÎÊʱ£¬´«Ë͸ß8λµØÖ·¡£P3(10~17),8λ׼˫ÏòI/O¿Ú¡£¿É×÷ÆÕͨI/O¿ÚºÍרÓÿڡ£ ¶þ¡¢Ñ¡ÔñÌâ 1.PCµÄÖµÊÇ_3_

1µ±Ç°Ö¸ÁîǰһÌõÖ¸ÁîµÄµØÖ·¡ð2µ±Ç°ÕýÔÚÖ´ÐÐÖ¸ÁîµÄµØÖ·¡ð3ÏÂÒ»ÌõÖ¸ÁîµÄµØÖ· ¡ð

4¿ØÖÆÆ÷ÖÐÖ¸Áî¼Ä´æÆ÷µÄµØÖ· ¡ð

2.ÏÂÁÐÖ¸ÁîÖÐÕýÈ·µÄÊÇ_2_

1PUSH A¡ð2MOV A,@R1¡ð3MOVC A,@DPTR¡ð4MOVX 20H,@RO ¡ð

3.8031µ¥Æ¬»úµÄ´®ÐпڵÄÖжϳÌÐòÈë¿ÚµØÖ·Îª__2__ 1001BH¡ð20023H¡ð3000BH¡ð40013H ¡ð

4.ÏÂÁÐÓйØMCS-51ÖжÏÓÅÏȼ¶¿ØÖƹý³ÌµÄÐðÊöÖУ¬´íÎóµÄÊÇ__4__ 1µÍÓÅÏȼ¶µÄÖжϲ»ÄÜÖжϸßÓÅÏȼ¶µÄÖжϴ¦Àí ¡ð

2ͬ¼¶Öжϲ»ÄÜǶÌ× ¡ð

3ͬ¼¶ÖжÏÇëÇó°´Ê±¼äÏȺó˳ÐòÏìÓ¦ ¡ð

4ͬʱ¼ä¼¶µÄ¶àÖжÏÇëÇó½«ÐγÉ×èÈû£¬ÏµÍ³ÎÞ·¨ÏìÓ¦ ¡ð

5.½øÐÐϵͳÀ©Õ¹Ê±£¬ÎªÊ¹PO¿ÚʵÏÖÊý¾ÝºÍµÍ8λµØÖ·Ðźŵĸ´Óã¬Ó¦Ê¹ÓÃ_1__ 1µØÖ·Ëø´æÆ÷¡ð2µØÖ·¼Ä´æÆ÷¡ð3µØÖ·»º³åÆ÷¡ð4µØÖ·ÒëÂëÆ÷ ¡ð

6.ÒÔÏÂÓйØPCºÍDPTRµÄ˵·¨´íÎóµÄÊÇ_3__

1DPTRÊÇ¿ÉÒÔ·ÃÎʵ쬶øPC²»ÄÜ·ÃÎÊ¡ð2ËüÃǶ¼ÊÇ16λϵͳ ¡ð

3ËüÃǶ¼¾ßÓÐ×Ô¶¯¼ÓÒ»¹¦ÄÜ¡ð4DPTR¿ÉÒÔ·ÖΪ2¸ö8λ¼Ä´æÆ÷ʹÓöøPC²»ÄÜ ¡ð

Ò»¡¢ Ìî¿ÕÌ⣺ 5. ΪʵÏÖÄÚ/Íâ³ÌÐò´æ´¢Æ÷µØÖ·µÄÏνӣ¬µ¥Æ¬»úEAÒý1. Êǵ¥Æ¬»ú£¨8051£©¸´Î»ÓÐÉϵ縴λºÍÊÖ¶¯°´¼ü¸´Î»½Å±Ø½Ó_¸ß_µçƽ¡£ Á½ÖÖ·½·¨£¬¸´Î»ºóCPUʹÓõÚ_00_×鹤×÷¼Ä´æÆ÷6. ADC 0809ÖУ¬¼È¿É×÷λ²î²éѯµÄ״̬±êÖ¾£¬ÓÖ¿É×÷£¨r0-r7£©£¬ËûÃÇ·Ö±ð¶ÔÓ¦µÄÄÚ´æµØÖ·Îª__00H___ÖÁΪÖжÏÇëÇóÐźÅʹÓõÄÐźÅÊÇ_EOC ___07H__,ÈôÒªÇóʹÓõڶþ×鹤×÷¼Ä´æÆ÷£¬RS1ºÍ7. MCS-51ϵÁе¥Æ¬»úP0¿ÚÖ÷ÒªÒÔ·Öʱ·Åʽ´«ËÍ__µØRS0Ó¦ÉèÖÃΪ_10_. Ö·__ºÍ__Êý¾Ý__Ðźţ¬´«Ë͸߰ËλµØÖ·ÐźÅÊÇͨ¹ý2. MCS-51ϵÁе¥Æ¬»úƬÄÚºÍÆ¬ÍâÊý¾Ý´æ´¢Æ÷µÄѰַ__P2__¿ÚʵÏֵġ£ ¿Õ¼ä·Ö±ðΪ__128B___¡¢___64K__. 8. ÔÚµ¥Æ¬»úʱÐòÖУ¬Ã¿Ò»¸ö»úÆ÷ÖÜÆÚÓÐ__6__¸ö״̬£¬3. MCS-51ϵÁе¥Æ¬»úÊý¾ÝÖ¸ÕëÊÇ__DPTR_;¶ÑÕ»Ö¸ÕëÓÐ_6_¸öʱÖÓÖÜÆÚ¡£ ÊÇ_SP_;·ÃÎÊÍⲿ´æ´¢Æ÷ÓÃ_MOVX_(ÌîÖú¼Ç·û)Ö¸9. ¸´Î»ºó£¬µ¥Æ¬»úÄÚ²¿×´Ì¬£¬ÄÚ²¿RAMÄÚÈÝΪ__²»±äÁî¡£ __,¼Ä´æÆ÷SPÄÚÈÝΪ_07H_£¬ÆäËû¼Ä´æÆ÷µÄÄÚÈÝΪ4. ÔÚ¶¨Ê±Æ÷¹¤×÷·½Ê½0Ï£¬¼ÆÊ±Æ÷µÄ¿í¶ÈΪ13룬Èç__00H___. ¹ûϵͳÕñµ´ÆµÂÊΪ3MHZ,Ôò×î´óµÄ¶¨Ê±Ê±¼äΪ___2^13*12/3M

ÓÐÁù×éÎÞ·ûºÅÊý4×Ö½ÚÊý£¬±»¼ÓÊýºÍ¼ÓÊý·Ö±ð´æÔÚFIRST ºÍSECOND£¨µÍ×Ö½ÚÔÚǰ£© .ÇóºÍ£¬²¢´æÔÚsum¿ªÊ¼µÄ¿Õ¼äÖÐ: ORG 0100H MOV R5, #03H MOV @R0£¬A ST:MOV R0£¬#SUM LOOP:MOV A,@R1 POP R1 MOV R1,#FIRST PUSH R1 INC R1 MOV R2,#SECOND MOV R1£¬R2 INC R2 MOV R4£¬#06H ADD A ,@R1 INC R0

DEC R4

LOOP1: MOV A,@R1 PUSH R1 MOV R1£¬R2 ADDC A , @R1 MOV @R0£¬A

POP R1 INC R1 INC R2 INC R0

DJNZ R5 LOOP1 CLR A ADDC A

MOV @R0£¬A INC R0

DJNZ R4, LOOP EXIT:SJMP $ END

ÀýÌâ2.ÔÚÄÚ²¿RAM´Ó30H¿ªÊ¼µÄµ¥ÔªÖУ¬´æÓÐ16¸öµ¥×Ö½ÚÎÞ·ûºÅÊý¡£ÇóÆäºÍ£¨2×Ö½Ú£©¼°Æ½¾ùÖµ£¬·Ö±ð´æÓÚ40Hµ¥ÔªºÍ42µ¥Ôª¡£ ORG 0000H LOOP:INC R0£» SWAP A; AJMP MAIN MOV A,@R0£» ANL A, #0FH; ORG 0030H ADD A,41H£» MOV R7,A MAIN:MOV 40H,#00H; MOV 41H,A£» MOV A, 40H MOV 41H,#00H£» CLR A£» SWAP A MOV 42H,#00H£» ADDC A,40H£» ADD A, R7 MOV 43H,#00H£» MOV 40H,A; MOV 42H, A MOV R0,#30H£» CJNE R0,#3FH,LOOP£» SJMP $ MOV 41H,30H£» MOV A, 41H; END ÒÆÎ»·¨

ÏÂÃæÊÇijһµç·µÄµØÖ·ÒëÂ벿·Ö£¬Ä³Êä³ö¶ËµØÖ·Ó¦ÎªC008Hµ«µç·Éè¼ÆÓдíÎó¡£ÇëÖ¸³ö´íÎ󲢸ÄÕý£¬»­³öÕýÈ·µÄµç·ͼ£¬²¢Ð´³öÊä³ö¶ËT0¡ªT5µÄ¸÷×ÔÊä³ö·¶Î§¡£ ´íÎóÔ­Òò£ºÔ­½Ó·¨×îµÍµØÖ·£º1000 0000 0000 0000B ×î¸ßµØÖ·£º1001 1111 1111 1111B

Õâµ±ÖÐûÓаüº¬µØÖ·£ºC008H£¨C008H=1100 0000 0000 1000B£© ¸ÄÕý·½·¨£ºÔÚP2.6ºóÃæ¼ÓÒ»¸ö·ÇÃÅ