ÄÚÈÝ·¢²¼¸üÐÂʱ¼ä : 2024/12/22 23:10:02ÐÇÆÚÒ» ÏÂÃæÊÇÎÄÕµÄÈ«²¿ÄÚÈÝÇëÈÏÕæÔĶÁ¡£
°üÀ¨Èý²¿·Ö£º¿É±à³ÌÂß¼¿é£¨CLB£¬Configurable Logic Block£©¡¢I/OÄ£¿é£¨IOB£¬I/O Block£©¡¢¿É±à³Ì»¥Á¬×ÊÔ´£¨PIR£¬Programmable Interconnect Resource£© (1)¡¢¿É±à³ÌÂß¼¿éCLB£º
ÊÇʵÏÖÓû§¹¦ÄܵĻù±¾µ¥Ôª£¬ËüÃÇͨ³£¹æÔòµØÅÅÁгÉÒ»¸öÕóÁÐ Ö÷ÒªÓÉÂß¼º¯Êý·¢ÉúÆ÷¡¢´¥·¢Æ÷¡¢Êý¾ÝÑ¡ÔñÆ÷µÈ²¿·Ö×é³É¡£
Âß¼º¯Êý·¢ÉúÆ÷£º CLBÖеÄÂß¼º¯Êý·¢ÉúÆ÷¶¼ÊÇ»ùÓÚ²éÕÒ±í½á¹¹¡£
²éÕÒ±í½á¹¹£¨LUT£¬Look-up Table£©:LUT±¾ÖÊÉϾÍÊÇÒ»¸öRAM¡£ ÿһ¸öLUT¿ÉÒÔ¿´³ÉÒ»¸öÓÐ4λµØÖ·ÏßµÄ16x1µÄRAM¡£ µ±Óû§Í¨¹ýÃèÊöÁËÒ»¸öÂß¼µç·ÒÔºó£¬FPGA¿ª·¢Èí¼þ»á×Ô¶¯¼ÆËãÂß¼µç·µÄËùÓпÉÄܵĽá¹û£¬²¢°Ñ½á¹ûÊÂÏÈдÈëRAM,ÕâÑù£¬Ã¿ÊäÈëÒ»¸öÐźŽøÐÐÂß¼ÔËËã¾ÍµÈÓÚÊäÈëÒ»¸öµØÖ·½øÐвé±í£¬ÕÒ³öµØÖ·¶ÔÓ¦µÄÄÚÈÝ£¬È»ºóÊä³ö¼´¿É¡£
(2)¡¢IOB£ºÖ÷ÒªÍê³ÉоƬÉÏÂß¼ÓëÍⲿ·â×°½ÅµÄ½Ó¿Ú£¬Ëüͨ³£ÅÅÁÐÔÚоƬµÄËÄÖÜ£»Ö÷ÒªÓÉÊäÈë´¥·¢Æ÷¡¢ÊäÈ뻺³åÆ÷ºÍÊä³ö´¥·¢Æ÷/Ëø´æÆ÷¡¢Êä³ö»º³åÆ÷×é³É¡£ ÿ¸öIOB¿ØÖÆÒ»¸öÒý½Å£¬ËüÃÇ¿ÉÒÔ±»ÅäÖÃΪÊäÈë¡¢Êä³ö»òË«ÏòI/O¹¦ÄÜ¡£
( 3)¡¢PIR£º ¿É±à³Ì»¥Á¬×ÊÔ´(PIR)°üÀ¨¸÷ÖÖ³¤¶ÈµÄÁ¬ÏßÏ߶κÍһЩ¿É±à³ÌÁ¬½Ó¿ª¹Ø£¬ ËüÃǽ«¸÷¸öCLBÖ®¼ä»òCLB¡¢ IOBÖ®¼äÒÔ¼°IOBÖ®¼äÁ¬½ÓÆðÀ´£¬¹¹³ÉÌض¨¹¦Äܵĵç·¡£ÕâЩ½ðÊôÏ߶δøÓпɱà³Ì¿ª¹Ø£¬Í¨¹ý×Ô¶¯²¼ÏßʵÏÖFPGAÄÚ²¿µÄCLBºÍCLBºÍIOBÖ®¼äµÄÁ¬Ïß¡£ Á¬ÏßÓÐÈýÖÖ»¥Á¬½á¹¹£ºµ¥³¤Ïß¡¢Ë«³¤Ïß¡¢³¤Ïß¡£
2.3.3 CPLDÓëFPGAµÄÒìͬ
(1)¡¢Ïàͬµã£ºÊäÈë/Êä³öµ¥Ôª£» Âß¼¿éÕóÁУ»»¥Á¬×ÊÔ´ (2)¡¢CPLDÓëFPGAµÄ²î±ð£º
? CPLDÊÇÕóÁÐʽ½á¹¹£¬»ùÓڳ˻ýÏî¼¼Êõ£¬ FPGAÊǵ¥ÔªÊ½½á¹¹£¬»ùÓÚ²éÕÒ±í¼¼Êõ£»
? CPLDÆ÷¼þµÄ¹Ø¼ü¼¼ÊõÊÇE2PROMºÍ¿ìÉÁ´æ´¢Æ÷¹¤ÒÕ £¬ FPGAͨ³£²ÉÓÃCMOS SRAM¹¤ÒÕ£»
? CPLDÓµÓÐÉϵ缴¿É¹¤×÷µÄÌØÐÔ£¬ FPGAÐèÒªÒ»¸ö¼ÓÔعý³Ì
? CPLDµÄÄÚÁ¬ÐøÐԵIJ¼Ï߽ṹʹÆäʱÐòÑÓ³Ù¾ßÓоùÔÈÐԺͿÉÔ¤²âÐÔ£¬ FPGA¾ßÓеķֶÎʽ²¼Ï߽ṹʹÆäʱÐòÑÓ³Ù¾ßÓв»¿ÉÔ¤²âÐÔ£»
? CPLD ±È½ÏÊʺÏÓÚʵÏÖ¸÷ÖÖ×éºÏÂß¼£¬ FPGA±È½ÏÊʺÏÓÚº¬ÓÐʱÐòÂß¼½Ï¶àµÄµç·
2.3.4 Altera ¹«Ë¾Éú²úµÄPLDÆ÷¼þ
Ö÷Òª²úÆ··ÖΪCPLDºÍFPGAÁ½´óÀàÐÍ
CPLD »ù±¾½á¹¹µ¥ÔªÊdz˻ýÏÔÚ¹¤ÒÕÉϲÉÓÃE2PROM±à³Ìµ¥Ôª¡£ FPGA ÀàÐÍÆ÷¼þ²ÉÓÃSRAM±à³Ìµ¥Ôª¡£
2.3.5 PLDÆ÷¼þµÄ·¢Õ¹Ç÷ÊÆ
£¨1£©Ïò´ó¹æÄ£¡¢¸ß¼¯³É¶È·½Ïò½øÒ»²½·¢Õ¹ £¨2£©ÏòµÍµçѹ¡¢µÍ¹¦ºÄµÄ·½Ïò·¢Õ¹ £¨3£©Ïò¸ßËÙ¿ÉÔ¤²âÑÓʱµÄ·½Ïò·¢Õ¹ £¨4£©Ïò¹¦ÄܷḻÐÍ·¢Õ¹
£¨5£©ÏòÄ£Êý»ìºÏ¿É±à³Ì·½Ïò·¢Õ¹ ±ß½çɨÃè²âÊÔ¼¼Êõ£º
±ß½çɨÃè²âÊÔ¼¼ÊõÖ÷Òª½â¾öоƬµÄ²âÊÔÎÊÌâ¡£
11 / 16
±ê×¼µÄ±ß½çɨÃè²âÊÔÖ»ÐèÒªËĸùÐźÅÏߣ¬Äܹ»¶Ôµç·°åÉÏËùÓÐÖ§³Ö±ß½çɨÃèµÄоƬÄÚ²¿Âß¼ºÍ±ß½ç¹Ü½Å½øÐвâÊÔ¡£Ó¦Óñ߽çɨÃè¼¼ÊõÄÜÔöǿоƬ¡¢µç·°åÉõÖÁϵͳµÄ¿É²âÊÔÐÔ¡£
3. Verilog HDL ÓïÑÔ
3.1 Verilog HDL »ù´¡ 3.1.1 ´Ê·¨
Verilog HDL³ÌÐòÊÇÓɸ÷ÖÖ·ûºÅÁ÷¹¹³ÉµÄ£¬ÎÒÃÇ°ÑËüÃdzÆ֮Ϊ´Ê·¨¡£ Verilog HDL ÖеĴʷ¨ÀàÐÍ°üÀ¨£º
(1) ¼ä¸ô·ûÓë×¢ÊÍ·û£» (2) ÊýÖµ£» (3) ×Ö·û´®£»
(4) ±êʶ·û¡¢¹Ø¼ü×Ö£» (5) ÔËËã·û¡£ Ò»¡¢¼ä¸ô·ûÓë×¢ÊÍ·û
¼ä¸ô·û°üÀ¨¿Õ¸ñ·û¡¢ÖƱí·û(tab)¡¢»»ÐÐÒÔ¼°»»Ò³·û¡£
Verilog HDLÓÐÁ½ÖÖ×¢ÊÍÐÎʽ£¬µ¥ÐÐ×¢ÊÍÒÔÁ½¸ö×Ö·û¡°//¡±Æðʼ£¬ÒÔеÄÒ»ÐÐ×÷Ϊ½áÊø£»¶ø¶Î×¢ÊÍÔòÊÇÒÔ/*Æðʼ£¬ÒÔ*/½áÊø¡£ ¶þ¡¢Êý Öµ Verilog HDLµÄÊýÖµÓÉÒÔÏÂËĸö»ù±¾µÄÖµ×é³É£º0¡ª´ú±íÂß¼0»ò¼Ù״̬
1¡ª´ú±íÂß¼1»òÕæ״̬ x¡ªÂß¼²»¶¨Ì¬ z¡ª¸ß×è̬
ÔÚ³ÌÐòÔËÐÐÖУ¬ÆäÖµ²»ÄܸıäµÄÁ¿³ÆΪ³£Á¿¡£ÕûÐÍÊý¡¢ÊµÐÍÊý 1).ÕûÐÍÊý¼°Æä±íʾ£º +/-<λ¿í>' <»ùÊý> <ÊýÖµ>
a¡¢ÊýÖµ³£Á¿²»Äܽ«Ï»®Ïß¡°_¡± Æä·ÅÓÚÊýÖµµÄÊ×λ¡£ b ¡¢ÔÚ¡¯ºÍ½øÖÆÖ®¼ä£¬ÊýÖµÖ®¼ä²»ÔÊÐí³öÏÖ¿Õ¸ñ¡£
c¡¢Èç¹û¶¨ÒåµÄλ¿í±Èʵ¼ÊµÄλÊý³¤£¬Í¨³£ÔÚ×ó±ß²¹0£¬µ«Èç¹ûÊýµÄ×î×ó±ßһλΪx»òz, ¾ÍÏàÓ¦µÄÓÃx»òzÔÚ×ó±ß²¹Î»¡£ d¡¢ÊýÖµ³£Á¿Öеġ°z¡±¿ÉÒÔÓá°£¿¡±À´´úÌæ¡£ 2).ʵÐÍÊý¼°Æä±íʾ£º
VerilogÖеÄʵÊý¿ÉÒÔÓÃÊ®½øÖƱíʾ·¨Óë¿Æѧ¼ÆÊý·¨Á½ÖÖ¸ñʽÀ´±íʾ
Èç¹û²ÉÓÃÊ®½øÖƸñʽ£¬Ð¡ÊýµãÁ½²à¶¼±ØÐëÖÁÉÙÓÐһλÊý×Ö£¬·ñÔòΪ·Ç·¨±íʾÐÎʽ¡£ ¡îʵÊý¿ÉÒÔת»¯ÎªÕûÊý£¬¸ù¾ÝËÄÉáÎåÈëµÄÔÔò¡£ Èý¡¢×Ö·û´®
ÔÚVerilogÖУ¬×Ö·û´®´ó¶àÓÃÓÚÏÔʾÐÅÏ¢µÄÃüÁîÖС£
×Ö·û´®³£Á¿ÊÇÓÃË«ÒýºÅÀ¨ÆðÀ´µÄ×Ö·ûÐòÁд®£¬Ëü±ØÐë°üº¬ÔÚͬһÐÐÖУ¬²»ÄֳܷɶàÐÐÊéд¡£ ×Ö·û´®±äÁ¿ÊǼĴæÆ÷ÐͱäÁ¿¡£ ËÄ¡¢±êʶ·û¡¢¹Ø¼ü×Ö ±êʶ·û£º
Óû§Îª³ÌÐòÃèÊöÖеÄVerilog ¶ÔÏóËùÆðµÄÃû×Ö¡£ Ä£¿éÃû¡¢¶Ë¿ÚÃûºÍʵÀýÃû¶¼ÊDZêʶ·û¡£
12 / 16
? ±êʶ·û±ØÐëÒÔÓ¢Óï×Öĸa-z, A-ZÆðÍ·£¬»òÕßÓÃϺáÏß·û _ ÆðÍ·¡£ÆäÖпÉÒÔ°üº¬Êý×Ö¡¢ $·ûºÍϺáÏß·û¡£
? Verilog ÊÇ´óСдÃô¸ÐµÄ¡£ ¡¾ÌØÊâ±êʶ·û¡¿£º
¡®$¡¯ ·ûºÅ±íʾ Verilog µÄϵͳÈÎÎñºÍº¯Êý ÌØÊâ·ûºÅ ¡°#¡± ³£ÓÃÀ´±íʾÑÓ³Ù
¹Ø¼ü×Ö£ºÊÇVerilogÓïÑÔÄÚ²¿µÄרÓôʣ¬ËùÓеĹؼü´Ê¶¼ÊÇСдµÄ¡£
3.1.2 Êý¾ÝÀàÐÍ
Á¬ÏßÐÍÊý¾ÝÏ൱ÓÚÓ²¼þµç·Öеĸ÷ÖÖÎïÀíÁ¬½Ó£¬´ú±íµÄÊÇÎïÀíÁ¬½ÓÏß¡£
¼Ä´æÆ÷ÐÍÊý¾ÝÒ»°ã¶ÔÓ¦µÄÊǾßÓÐ״̬±£³Ö×÷Óõĵç·£¬Èç´¥·¢Æ÷¡¢¼Ä´æÆ÷¡¢Ëø´æÆ÷¡£ ËüµÄÌصãÊÇÊä³öÄܱ£³ÖÆäÖµ£¬Ö±µ½Ëü±»¸³ÓÚеÄÖµ¡£
? ¶ÔÓڶ˿ÚÐźţ¬ÊäÈë¶Ë¿ÚÖ»ÄÜÊÇnetÀàÐÍ¡£Êä³ö¶Ë¿Ú¿ÉÒÔÊÇnetÀàÐÍ£¬Ò²¿ÉÒÔÊÇregisterÀàÐÍ¡£ÈôÊä³ö¶Ë¿ÚÔÚ¹ý³Ì¿éÖи³ÖµÔòΪregisterÀàÐÍ£»ÈôÔÚ¹ý³Ì¿éÍ⸳ֵ(°üÀ¨ÊµÀý»¯Óï¾ä,assign Á¬Ðø¸³ÖµÓï¾ä£©£¬ÔòΪnetÀàÐÍ¡£
? ÄÚ²¿ÐźÅÀàÐÍÓëÊä³ö¶Ë¿ÚÏàͬ£¬¿ÉÒÔÊÇnet»òregisterÀàÐÍ¡£
parameter ÓÃÀ´¶¨Òå³£Á¿£¬¼´ÓÃÀ´¶¨ÒåÒ»¸ö±êʶ·û´ú±íÒ»¸ö³£Á¿¡£Ö÷ÒªÓÃÓÚ¶¨ÒåÑÓ³Ùʱ¼äºÍ±äÁ¿¿í¶È¡£
3.1.3ÔËËã·û
°´Ëù´ø²Ù×÷ÊýµÄ¸öÊýÇø·Ö£¬ÔËËã·û¿É·ÖΪ3Àࣺµ¥Ä¿ÔËËã·û¡¢Ë«Ä¿ÔËËã·û¡¢ÈýÄ¿ÔËËã·û¡£
°´¹¦ÄÜ·Ö£ºËãÊõÔËËã·û¡¢¹ØϵÔËËã·û¡¢µÈʽÔËËã·û¡¢Âß¼ÔËËã·û¡¢Î»ÔËËã·û¡¢ ËõλÂß¼ÔËËã·û¡¢ÒÆλÔËËã·û¡¢²¢½ÓÔËËã·ûµÈ¡£
£¨1£©ËãÊõÔËËã·ûÓÃÓÚ½øÐÐÊýÖµÔËË㣬+¡¢¨C¡¢*¡¢/¡¢%¡£ £¨2£©Âß¼ÔËËã·û£º &&£¨Âß¼Ó룩¡¢||£¨Âß¼»ò£©¡¢!£¨Âß¼·Ç£© £¨3£©Î»ÔËË㣺½«Á½¸ö²Ù×÷Êý°´¶ÔӦλ·Ö±ð½øÐÐÂß¼ÔËË㣺 ~£¨·Ç£©£¨°´Î»È¡·´£©£» &£¨Ó룩£» |£¨»ò£©£» ^£¨Òì»ò£©£»^~£¬~^£¨Í¬»ò£©£» ~&£¨Óë·Ç£©£» ~|£¨»ò·Ç£© £¨4£© ¹ØϵÔËËã·û>£¨´óÓÚ£©£»>= £¨´óÓÚµÈÓÚ£© £»< £¨Ð¡ÓÚ£©£»<= £¨Ð¡ÓÚµÈÓÚ£©¡£ £¨5£© µÈʽÔËËã·û£º= =£¨ÏàµÈ£©£»£¡=£¨²»ÏàµÈ£©£»= = =£¨È«µÈ£©£»£¡= =£¨²»È«µÈ£©¡£ £¨6£©ËõλÔËËã·û£ºËõλÔËËã·û½«Ò»¸öʸÁ¿Ëõ¼õΪһ¸ö±êÁ¿¡£ &£¨Ó룩£»|£¨»ò£©£»^£¨Òì»ò£©£»^~£¨Í¬»ò£©£»~&£¨Óë·Ç£©£»~|£¨»ò·Ç£©¡£ £¨7£©ÒÆλÔËËã·ûA<
3.2 Verilog HDLÖеÄÄ£¿é 3.2.1 Ä£¿é
13 / 16
Ä£¿éÊÇVerilog HDLÓïÑԵĻù±¾ÃèÊöµ¥Î»£¬ËüÓÃÓÚÃèÊöij¸öµç·µÄ¹¦ÄÜ»ò½á¹¹£¬ÒÔ¼°ËüÓëÆäËüÄ£¿éͨÐŵÄÍⲿ¶Ë¿Ú¡£
module <Ä£¿éÃû> (<¶Ë¿ÚÁбí>) ¶Ë¿Ú˵Ã÷ (input,output,inout) Êý¾ÝÀàÐÍ˵Ã÷£¨wire reg£©
Âß¼¹¦ÄÜ»ò½á¹¹¹¹³É¶¨Ò壨ÃÅÔª¼þÀý»¯¡¢assignÊý¾ÝÁ÷always¿éÐÐΪÃèÊö¡¢µ÷ÓÃÆäËüÄ£¿é£© endmodule
ÿ¸öÄ£¿éʵÏÖÌض¨µÄ¹¦ÄÜ£»Ä£¿é¿ÉÒÔ½øÐвã´ÎǶÌס£
Verilog HDL³ÌÐòÒ»ÐпÉÒÔд¶àÌõÓï¾ä£¬Ò²¿ÉÒÔÒ»ÌõÓï¾ä·Ö³É¶àÐÐÊéд£¬Ã¿ÌõÓï¾äÒԷֺŽáÊø£¬ endmoduleÓï¾äºóÃæ²»±Øд·ÖºÅ¡£
3.2.2 Verilog HDL Êý×ÖÉè¼ÆÖÐÄ£¿éÖй¦ÄܵĻù±¾ÃèÊö·½Ê½
£¨1£©¡¢½á¹¹ÃèÊö·½Ê½: ÃèÊöµç·ÊÇÓÉÄÄЩ»ù±¾Ôª¼þ×é³É,ÒÔ¼°Ï໥Á¬½Ó¹Øϵ¡£ ÄÚÖÃÃż¶Ôª¼þ£¨12¸öÂß¼ÃÅand or xor not µÈ £©¡¢Óû§×Ô¼º¶¨ÒåµÄÄ£¿é¡£ ÃÅÔª¼þµÄµ÷Óõ÷Óøñʽ£ºÃÅÔª¼þÃû³Æ ʵÀýÃû £¨¶Ë¿ÚÁÐ±í£© ¶àÊäÈëÃŵĶ˿ÚÁбí: £¨Êä³ö¡¢ÊäÈë1¡¢ÊäÈë2¡¢Êä³ö3¡¡.£©£» ¶ÔÓÚÈý̬ÃÅÊäÈë¡¢Êä³ö¶Ë¿Ú£ºÊä³ö£¬ÊäÈ룬ʹÄÜ¿ØÖƶˣ©£» ¶ÔÓÚbufºÍnotÊäÈë¡¢Êä³ö¶Ë£º£¨Êä³ö1£¬Êä³ö2£¬Êä³ö3£¬ÊäÈ룩£» £¨2£©¡¢Êý¾ÝÁ÷ÃèÊö·½Ê½: ÒÔ¡°assign¡±¹Ø¼ü×Ö¿ªÍ·µÄÁ¬Ðø¸³ÖµÓï¾ä ¡£ Á¬Ðø¸³ÖµÓï¾äµÄÓ﷨Ϊ: assign #ÑÓʱÁ¿ ±äÁ¿Ãû = ¸³Öµ±í´ïʽ; £¨3£©¡¢ÐÐΪÃèÊö·½Ê½: ÐÐΪÃèÊöÖ¸µç·ÊäÈëÊä³öÐźżäµÄÂß¼¹Øϵ¡£ £¨4£©¡¢»ìºÏÉè¼ÆÃèÊö·½Ê½: ÐÐΪ¹¦ÄÜÖ÷ҪʹÓùý³ÌÓï¾äÀ´ÃèÊö¡£
3.3 Verilog HDl ÐÐΪÓï¾ä 3.3.1 ¹ý³ÌÓï¾ä
£¨1£©initial ¹ý³ÌÓï¾ä
×÷ÓÃÓëÌص㣺 initialÓï¾äÖ÷ÒªÓÃÓÚ³õʼ»¯ºÍ²¨ÐÎÉú³É,initial ¹ý³Ì¿éÖеÄÓï¾ä˳ÐòÖ´ÐÐÇÒ½öÖ´ÐÐÒ»´Î¡£ Óï·¨¸ñʽ£º initial begin Óï¾ä1; Óï¾ä2; ..... Óï¾än; end ±äÁ¿Ò»¶¨±»ÉùÃ÷ΪregÐÍ¡£
£¨2£©always ¹ý³ÌÓï¾ä
Ìص㣺alwaysÓï¾äºó¸ú×ŵÄÓï¾äÊÇ·ñÖ´ÐУ¬ÔòÒª¿´ËüµÄ´¥·¢Ìõ¼þÊÇ·ñÂú×㣬ÈçÂú×ãÔòÔËÐиÃÓï¾äÒ»´Î£¬Èç²»¶ÏÂú×ãÔò²»¶ÏµØÑ»·Ö´ÐС£
Óï·¨¸ñʽ£ºalways @ (Ãô¸ÐÐźűí´ïʽ ) ¿éÓï¾ä
3.3.2 ¿éÓï¾ä
14 / 16
´®Ðпébegin_end
´®Ðп飨˳Ðò¿é£©ÓÐÒÔÏÂÌص㣺
1) ¿éÄÚµÄÓï¾äÊÇ°´Ë³ÐòÖ´Ðеģ¬¼´Ö»ÓÐÉÏÃæÒ»ÌõÓï¾äÖ´ÐÐÍêºóÏÂÃæµÄÓï¾ä²ÅÄÜÖ´ÐС£ 2) ÿÌõÓï¾äµÄÑÓ³Ùʱ¼äÊÇÏà¶ÔÓÚÇ°Ò»ÌõÓï¾äÖ´ÐнáÊøµÄʱ¼ä¶øÑԵġ£ 3) Ö±µ½×îºóÒ»ÌõÓï¾äÖ´ÐÐÍ꣬³ÌÐòÁ÷³Ì¿ØÖƲÅÌø³ö¸ÃÓï¾ä¿é¡£ ˳Ðò¿éµÄ¸ñʽÈçÏ£º begin »ò Óï¾ä1; begin:¿éÃû Óï¾ä2; ¿éÄÚÉùÃ÷Óï¾ä £» ..... Óï¾ä1; Óï¾än; Óï¾ä2; end ......
Óï¾än;
3.3.3 ¸³ÖµÓï¾ä end
£¨1£© Á¬Ðø¸³ÖµÓï¾ä
ÒԹؼü×Öassign ¿ªÍ·µÄΪÁ¬Ðø¸³ÖµÓï¾ä£¬Ö÷ÒªÓÃÓÚ¶ÔwireÐͱäÁ¿½øÐи³Öµ¡£ £¨2£© ¹ý³Ì¸³ÖµÓï¾ä
ÓÃÔÚ¹ý³ÌÓï¾äµ±ÖÐ,Ò»°ãÓÃÓÚ¶ÔregÐͱäÁ¿½øÐи³Öµ¡£ ¹ý³Ì¸³ÖµÓÐ×èÈû¸³ÖµºÍ·Ç×èÈû¸³ÖµÁ½ÖÖ·½Ê½¡£ ×èÈû¸³Öµ·½Ê½ ¸³Öµ·ûºÅΪ¡°=¡±¡£ ×èÈû¸³ÖµÓï¾äÖ´ÐеĹý³ÌÊÇ£ºÊ×ÏȼÆËãÓҶ˸³Öµ±í´ïʽµÄÈ¡Öµ£¬È»ºóÁ¢¼´½«¼ÆËã½á¹û¸³Öµ¸ø¡°=¡±×ó¶ËµÄ±»¸³Öµ±äÁ¿¡£Èç¹ûÔÚÒ»¸ö¿éÓï¾äÖУ¬ÓжàÌõ×èÈû¸³ÖµÓï¾ä£¬ÔÚÇ°ÃæµÄ¸³ÖµÓï¾äûÓÐÍê³É֮ǰ£¬ºóÃæµÄÓï¾ä¾Í²»Äܱ»Ö´ÐС£
·Ç×èÈû¸³Öµ·½Ê½ ¸³Öµ·ûºÅΪ¡° < =¡±¡£
·Ç×èÈû¸³Öµ·½Ê½µÄÌصãÊÇ£ºÔÚÕû¸ö¹ý³Ì¿é½áÊøʱ²ÅÍê³É¸³Öµ²Ù×÷¡£Ò»Æ븳ֵ¡£
3.3.4 Ìõ¼þÓï¾ä
£¨1£©If£elseÓï¾ä (1) if(±í´ïʽ) Óï¾ä;
(2) if(±í´ïʽ) Óï¾ä1 ; else £¨2£©case Óï¾ä Óï¾ä2;
case Óï¾äÓÐÈýÖÖ±íʾ·½Ê½£º 1) case(±í´ïʽ)
1£©ÔÚcaseÓï¾äÖУ¬¿ØÖƱí´ïʽÓë·ÖÖ§±í´ïʽµÄÖµÖ®¼äµÄ±È½ÏÊÇÒ»ÖÖÈ«µÈ±È½Ï£¨===£©£¬±ØÐë±£Ö¤Á½ÕߵĶÔӦλȫµÈ¡£
2) casezÓëcasexÓï¾äÊÇcaseÓï¾äµÄÁ½ÖÖ±äÌ壬ÔÚcasezÓï¾äÖУ¬z±»ÈÏΪÊÇÎÞ¹ØÖµ¡£ÔÚcasexÓï¾äÖУ¬ÖµxºÍz¶¼±»ÈÏΪÊÇÎÞ¹Øλ¡£
3£©¿ÉÒÔÓÃ? ×Ö·ûÀ´´úÌæ×Ö·ûx»òz,±íʾÎÞ¹Øλ¡£
15 / 16
(3) if(±í´ïʽ1) Óï¾ä1;
else if(±í´ïʽ2) Óï¾ä2; else if(±í´ïʽ3) Óï¾ä3; ........
else if (±í´ïʽm) Óï¾äm; else Óï¾än;