ptr=0x20; //Ö¸Ïò0x20µ¥Ôª x=*ptr; //È¡µÚÒ»¸öÊý ptr=0x22; //Ö¸Ïò0x22µ¥Ôª y=*ptr; //È¡µÚ¶þ¸öÊý
z=(x>y)?x:y; //½«Á½ÊýÖеĽϴóÕ߸³¸øz ptr=0x24; //Ö¸ÏòµØÖ·Îª0x24µÄÄ¿±êµ¥Ôª *ptr=z; //½«´óÊý´æÈëÄ¿±êµ¥Ôª } ·½·¨¶þ£º
#include
unsigned int x,y,z;
x=DBYTE[0X20]*256+DBYTE[0X21]; y=DBYTE[0X22]*256+DBYTE[0X23]; z=(x>y)?x:y; //½«Á½ÊýÖеĽϴóÕ߸³¸øz DBYTE[0X24]=z/256; DBYTE[0X25]=z%6; } ·½·¨Èý£º
#include
unsigned int y _at_ 0x22; unsigned int z _at_ 0x24; void main() {
z=(x>y)?x:y; }
µÚ4Õ µ¥Æ¬»úµÄC51ÓïÑÔ Ï°Ìâ
1£®CÓïÑÔµÄÓŵãÊÇʲô£¿C³ÌÐòµÄÖ÷Òª½á¹¹ÌصãÊÇʲô£¿
´ð£ºCÓïÑÔÊÇÒ»Öָ߼¶ÓïÑÔ£¬Ñ§Ï°±ÈµÍ¼¶ÈÝÒ×£¬²»ÐèÒª¾ßÌå×éÖ¯¡¢·ÖÅä´æ´¢Æ÷×ÊÔ´ºÍ´¦Àí¶Ë¿ÚÊý¾Ý£¬¿ÉÒÔÖ±½ÓÇý¶¯µ¥Æ¬»úµÄËùÓÐ×ÊÔ´¡£
C³ÌÐòÒÔº¯ÊýΪµ¥Î»£¬ÓÉÒ»¸öÖ÷º¯ÊýºÍÈô¸É¸öÆäËûº¯Êý¹¹³É£¬Ö÷º¯ÊýÊdzÌÐòµÄÈë¿Ú£¬ÆäËûº¯ÊýÓÉÖ÷º¯ÊýÖ±½Ó»ò¼ä½Óµ÷ÓᣳÌÐò¿ÉÒÔÓÉÒ»¸öÎļþ»ò¶à¸öÎļþ×é³É¡£ÎļþÀàÐͰüÀ¨Í·ÎļþºÍCÓïÑÔÔ´Îļþ£¬Ò²¿ÉÒÔÊÇ»ã±àÓïÑÔÎļþ£¬C³ÌÐò¿ÉÓë»ã±àÓïÑÔ»ìºÏ±à³Ì¡£
2£®C51ÓïÑԵıäÁ¿¶¨Òå°üº¬ÄÄЩ¹Ø¼üÒòËØ£¿ÎªºÎÕâÑù¿¼ÂÇ£¿ ´ð£ºCÓïÑԵıäÁ¿¶¨Òå¸ñʽÈçÏ£º [´æ´¢ÖÖÀà] Êý¾ÝÀàÐÍ [´æ´¢ÀàÐÍ] ±äÁ¿Ãû ÆäÖУº
´æ´¢ÖÖÀàÓë±ê×¼CÓïÑÔÏàͬ£¬°üÀ¨£º×Ô¶¯ÐÍ(auto)¡¢ÍⲿÐÍ(extern)¡¢¾²Ì¬ÐÍ(static)¡¢¼Ä´æÆ÷ÐÍ(register)¡£
Êý¾ÝÀàÐͳýÁ˰üº¬±ê×¼CÓïÑÔÀàÐ͵Ä×Ö·ûÐÍ(char)£¬ÕûÐÍ(int)£¬³¤ÕûÐÍ(long)£¬¸¡µãÐÍ(float)£¬Ë«¾«¶ÈÐÍ(double)Í⣬»¹Óжþ½øÖÆÎ»ÐÍ(bit)£¬ÌØÊ⹦ÄܼĴæÆ÷ÐÍ(sfr)£¬SFR¿ÉλѰַµÄλÀàÐÍ(sbit)¡£
´æ´¢ÀàÐͰüÀ¨£ºÆ¬ÄÚRAMÇø(data)¡¢Æ¬ÄÚ¿ÉÎ»Ñ°Ö·Çø(bdata)£¬Æ¬ÄÚRAM¼ä½ÓÑ°Ö·Çø(idata)£¬Æ¬ÍâRAMÒ³Ñ°Ö·Çø(pdata)£¬Æ¬ÍâRAMÇø(xdata)¡¢ROMÇø(code)¡£
Ö»ËùÒԱȱê×¼CÓïÑÔ¶àÁË´æ´¢ÀàÐÍ£¬¾ÍÊÇÒòΪMCS£51µ¥Æ¬»úµÄ´æ´¢½á¹¹ÖÐÓÐËĸöÎïÀí´æ´¢¿Õ¼ä(ƬÄÚRAM¡¢Æ¬ÄÚROM£¬Æ¬ÍâRAM£¬Æ¬ÍâROM)£¬Èý¸öÂß¼µØÖ·
¿Õ¼ä(ƬÄÚRAM£¬Æ¬ÍâRAM£¬ROM)£¬¶øÇÒÓжàÖÖѰַ·½Ê½£¨Ö±½ÓѰַ¡¢¼ä½ÓѰַ¡¢Ò³ÃæÑ°Ö·¡¢Î»Ñ°Ö·£©ËùÖ£¬ËùÒÔÔÚ¶¨Òå±äÁ¿Ê±£¬Òª¸ù¾ÝÆäËùÔÚλÖúÍѰַ·½Ê½Ã÷È·Ö¸¶¨´æ´¢ÀàÐÍ¡£
3£®C51Óë»ã±àÓïÑÔµÄÌØµã¸÷ÓÐÄÄЩ£¿ÔõÑùʵÏÖÁ½ÕßµÄÓÅÊÆ»¥²¹£¿
´ð£ºC51Êǽṹ»¯ÓïÑÔ£¬´úÂë½ô´Õ£»½Ó½ü×ÔÈ»ÓïÑÔ£¬³ÌÐò¿É¶ÁÐÔÇ¿£¬Ò×ÓÚµ÷ÊÔ¡¢Î¬»¤£»¿âº¯Êý·á¸»£¬±à³Ì¹¤×÷Á¿Ð¡£¬¿Éʹ²úÆ·¿ª·¢ÖÜÆÚ¶Ì£»¾ßÓлúÆ÷¼¶¿ØÖÆÄÜÁ¦£¬¹¦ÄܺÜÇ¿£¬ÊʺÏÓÚǶÈëʽϵͳ¿ª·¢£»»ã±àÖ¸ÁîÎ޹أ¬Ò×ÓÚÕÆÎÕ£¬ÉÏÊÖ¿ì¡£
»ã±àÓïÑÔÓŵãÊDZàдµÄ³ÌÐò´úÂ뾫Á¶¡¢Ö´ÐÐËٶȿ죬ÔÚÏàͬ¹¦ÄÜÏ£¬»ã±àÓïÑÔ³ÌÐò¿ÉÄܱÈCÓïÑÔ³ÌÐòЧÂʸߡ£È±µãÊǶԳÌÐòÔ±ÒªÇó¸ß£¬±ØÐë¶Ôµ¥Æ¬»úµÄÓ²¼þ½á¹¹·Ç³£ÊìϤ²ÅÄܱà³Ì£¬²»±ãÓÚ±àд±È½Ï¸´ÔӵijÌÐò¡£
¿É¸ù¾ÝÐèÒª¶ÔÒªÇóʱ¼äÐÔºÜÇ¿µÄ´úÂëÓûã±àÓïÑÔ±àд£¬ÆäËü²¿·ÖÓÃCÓïÑÔ±àд£¬Á½Õß»ìºÏ±à³Ì¾Í¿ÉÒÔʵÏÖÓÅÊÆ»¥²¹¡£
4£®Ö¸³öÏÂÃæ³ÌÐòµÄÓï·¨´íÎó£º #include
for(i=O; i<=255; ¡±++¡±); } ´ð£º
#include
a=C£» //aºÍC±ØÐëÏȶ¨Òå²Å¿ÉʹÓà int a=7,C //ȱ·ÖºÅ£¬Ó¦¸ÃÌáÔÚʹÓÃǰ˵Ã÷
delay(10) //ÑÓʱ×Ó³ÌÐò±ØÐëÏȶ¨Ò壬»òÏÈÓк¯ÊýÔÐÍ˵Ã÷ void delay();{ //×÷Ϊº¯Êý¶¨Ò壬Óк¯Êý¶¨Òå²»ÄÜǶÌ×µÄÎÊÌ⣬
//¼´²»ÄÜÔÚÒ»¸öº¯ÊýÄÚ¶¨ÒåÁíÒ»¸öº¯Êý£¬¶øÇÒ¡°{¡±Ç°²»Ó¦ÓзֺŠ//×÷Ϊº¯ÊýÔÐÍ˵Ã÷£¬Ó¦¸Ã·ÅÔÚº¯Êýµ÷ÓÃ֮ǰ,ÇÒÆäºó²»Ó¦¸Ã½Óº¯ÊýÌå cgar i£» //×Ö·ûÐÍÓ¦¸ÃÊÇunsigned char for(i=O; i<=255; ¡±++¡±);// ¡±++¡±Ó¦¸Ä³Éi++ }
//Ö÷º¯ÊýûÓнáÊø£¬È±¡±}¡±
5£®¶¨Òå±äÁ¿a£¬b£¬c£¬ÆäÖÐaΪÄÚ²¿RAMµÄ¿ÉÎ»Ñ°Ö·ÇøµÄ×Ö·û±äÁ¿£¬bΪÍⲿÊý¾Ý´æ´¢Çø¸¡µãÐͱäÁ¿£¬cΪָÏò int ÐÍ xdata ÇøµÄÖ¸Õë¡£
´ð£º char bdata a; float xdata b; int xdata *c;
6£®±à³Ì½«8051µÄÄÚ²¿Êý¾Ý´æ´¢Æ÷20Hµ¥ÔªºÍ35Hµ¥ÔªµÄÊý¾ÝÏà³Ë£¬½á¹û´æµ½ÍⲿÊý¾Ý´æ´¢Æ÷ÖÐ(ÈÎÒâλÖÃ)¡£
½â£º·½·¨Ò»£ºÓÃǶÈëʽ»ã±àÓïÑÔʵÏÖ #include