Programming °æ (¾«»ªÇø)
·¢ÐÅÈË: SwordLea (·Éµ¶Àî), ÐÅÇø: Programming
±ê Ìâ: [ºÏ¼¯]When Do We Write Our Chinese OS?(3)
·¢ÐÅÕ¾: ¹þ¹¤´ó×϶¡Ïã (2003Äê12ÔÂ02ÈÕ17:17:00 ÐÇÆÚ¶þ), Õ¾ÄÚÐżþ
©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤
iamxiaohan (ä캮) ÓÚ 2003Äê11ÔÂ29ÈÕ12:45:53 ÐÇÆÚÁù ˵µÀ:
When Do We Write Our Chinese OS?(3)
ÔÚÉÏһƪÖÐÎÒÃÇʵÏÖÁËÒ»¸öÕæÕýÒâÒåÉϵÄÒýµ¼³ÌÐò£¬´ËÒýµ¼³ÌÐò½«¼ÆËã»ú´ÓÆô¶¯×´Ì¬Ê±µÄ
16λʵģʽתµ½ÁË32λµÄ±£»¤Ä£Ê½Ï£¬²¢ÇÒ½«Ò»¸öÓÃCÓïÑÔдµÄÕæÕýµÄÄÚºËÔØÈëÁËÄÚ´æÖ´
ÐУ¬Òýµ¼³ÌÐòµÄ¹¤×÷ÒѾÍê³É£¬½ÓÏÂÀ´µÄ¹¤×÷¾ÍÊDZàдһ¸öÓÅÁ¼µÄ²Ù×÷ϵͳµÄÄںˣ¬ÕâÊÇ
Ò»¸ö·Ç³£¾Þ´óµÄ¹¤³Ì£¬ÎÒÃÇÐèÒªÒ»²½Ò»²½µÄÀ´Íê³É£¬Í¬Ñù£¬½ñÌìÎÒÃÇÖ»Íê³É·Ç³£·Ç³£Ð¡µÄ
Ò»²½¡£ÔÚÉÏһƪÖУ¬ÄÚºËÖ»ÊÇÏÔʾ³öÒ»¸öÌáʾÓ±êÖ¾×ÅÄÚºËÒѾÆô¶¯ÁË£¬Ëü»¹²»¾ßÓÐͬ
Óû§µÄ½»»¥¹¦ÄÜ£¬ÔÚÕâһƪÖУ¬ÎÒÃǽ«Íê³ÉÒ»¸ö¿ÉÒÔ½ÓÊÜÓû§¼üÅÌÊäÈëµÄÄںˣ¬ÕâÊÇÄÚºË
¾ßÓн»»¥¹¦ÄܵĵÚÒ»²½¡ª¡ªÄܽÓÊÜÓû§ÊäÈë¡£
±¾ÆªËùʵÏÖµÄÄÚºËÖ÷Òª²ÉÓÃC++ÓïÑÔÊéд£¬Öжϴ¦Àí²¿·ÖÓõ½Á˺ÜСһ¶Î»ã±à´úÂ룬Òò´Ë
´Ó±¾ÆªÖÐÄ㻹½«ÖªµÀÔõÑùʵÏÖC++Óë»ã±àÓïÑԵĻìºÏ±à³Ì£¬±¾Äں˿ª·ÅÔ´Â룬²ÉÓõÄÊÇC++
ÀàģʽµÄ¿ª·Å½á¹¹£¬Äã¿ÉÒÔºÜÇáËɵÄÐÞ¸ÄËü£¬ÈÃËü¹¦ÄܸüÇ¿£¬ÐÔÄÜÀíºÃ¡£
ÕâÀïÏëÊ×ÏȽéÉÜһϱ¾Äں˵ijÌÐò½á¹¹£¬ÕâÑùÄãÔÚÔĶÁÔ´´úÂëµÄʱºò£¬»áһĿÁËÈ»¡£
±¾Äں˶¨ÒåÁËÒ»¸öTVideoÀ࣬·â×°Á˶ÔÓÚVGAÏÔ¿¨µÄ´¦Àí£¬ËüµÄÉùÃ÷ÈçÏ£º
class TVideo{
public:
static TPos GetPos() ;
static void SetPos( TPos& pos ) ;
static void SetPos( unsigned short X , unsigned short Y ) ;
static void ClearScreen() ;
static void Print( const char *msg , EColor FrontColor = clWhite ,
EColor BackColor = clBlack ) ;
static void Print( const char msg , EColor FrontColor = clWhite ,
EColor BackColor = clBlack ) ;
EColor BackColor ;
EColor FrontColor ;
protected:
TVideo(){}
};
ÆäÖÐ TPos Ò²ÊÇÒ»¸öÀ࣬£¨ÒÔT¿ªÍ·µÄ£¬¾ùÊÇÀàÃû£¬ÒÔE¿ªÍ·µÄÊÇö¾ÙÀàÐÍ£©£¬ÆäÉùÃ÷ÈçÏÂ
class TPos{
public:
unsigned short X ;
unsigned short Y ;
};
Æä EColorÊÇÒ»¸ö°üº¬ÁËÉ«²Ê±äÁ¿µÄö¾ÙÀàÐÍ£º
enum EColor{ clBlack , clBlue , clGreen , clCyan , clRed , clMagenta ,
clBrown , clLightGray , clDarkGray , clLightBlue , clLightGreen ,
clLightCyan , clLightRed , clLightMagenta , clYellow , clWhite } ;
ÓÉÓÚC++ÓïÑԵķâ×°»úÖÆ£¬ÕâʹµÃÔÚ³ÌÐòÖÐÒªÏëÔÚÆÁÄ»ÉÏÊä³öÊǷdz£¼òµ¥µÄÊ£¬ÏÂÃæÎÒÃǾÍ
À´¿´¿´Ö÷³ÌÐò¶ÔËüÃǵ÷ÓõÄÀý×Ó£º
char* msg0 = "Welcome To HIT Operation System!Version 0.0003 by xyb" ;
char* msg1 = "Please input: " ;
EColor color[] = { clLightBlue , clLightGreen , clLightCyan ,
clLightRed , clLightMagenta , clYellow , clWhite ,
clLightBlue } ;
int i = 0 ;
while( msg0[ i ] != '\0' ){
TVideo::Print( msg0[ i++ ] , color[ i % 8 ] ) ;
}
TVideo::SetPos( 0 , 2 ) ;
i = 0 ;
while( msg1[ i ] != '\0' ){
TVideo::Print( msg1[ i++ ] , clWhite , color[ i % 8 ] ) ;
}
Õâ¶Î´úÂë·Ç³£¼òµ¥£¬¾Í²»Ïê¼Ó½âÊÍÁË£¬ËüÓø÷ÖÖÉ«²Ê´òÓ¡ÌáʾÐÅÏ¢£¬ÏÂÃæ¾ÍÊÇËüµÄÖ´ÐÐЧ
¹û
http://202.118.250.9/borlandclub/pyos/pyos3_1.jpg
ÏÂÃæÊǽÓÊÜÓû§ÊäÈëºóµÄЧ¹û
http://202.118.250.9/borlandclub/pyos/pyos3_2.jpg
ÏÂÃ棬ÎÒÃǽ«À´¿´¿´ÕⶼÊÇÔõôʵÏֵġ£
ÔĶÁ±¾ÎÄ£¬×îºÃÓÐÄÇôһµãµÄ»ã±à»ù´¡£¬ÁíÍ⣬×îºÃÒѾÔĶÁ¹ýÇ°Á½Æª£¬ÒòΪºÜ¶à¶«¶«ÊÇ
ͬǰÁ½Æª,ÌرðÊǵڶþƪÏà¹ØµÄ~~~
ºÃÁË£¬ÏÂÃ濪ʼתÈçÕýÌ⣬Ê×ÏÈ£¬ÏȽéÉÜÒ»ÏÂÔõÑù´¦ÀíÏÔ¿¨£¬
ÔÚÉÏһƪÖУ¬ÎÒÃÇÒѾ֪µÀÁË£¬Í¨¹ý°ÑÊý¾ÝÖ±½Óдµ½ÏÔ´æÖоͿÉÒÔÔÚÆÁÄ»ÉÏÏÔʾ£¬ÕâÀïÎÒ
Ãǽ«¸üÉîÈëµÄ½éÉÜÒ»ÏÂ
ÏÖÔÚµÄÏÔ¿¨´ó¶àÊÇVGA±ê×¼¼æÈÝÏÔ¿¨£¬Ëü·Ö×Ö·ûÓëͼÐÎģʽ£¬±¾ÎÄÖ»½éÉÜ×Ö·ûģʽ¡£ÔÚ×Ö·û
ģʽÏ£¬ËüÓÐ25ÐУ¬Ã¿ÐÐÓÐ80ÁУ¬ÏÔ´æµÄµØַΪÓÚ0xb8000´¦£¬¶ÔÓÚÐèÒªÏÔʾµÄÿһ¸ö×Ö·û
£¬ÓÃÁ½¸ö×Ö½ÚÀ´ÃèÊö£¬µÚÒ»¸ö×Ö½ÚÊÇÒªÏÔʾµÄÕâ¸ö×Ö·ûµÄASCIIÂ룬µÚ¶þ¸ö×Ö½ÚÊÇÒªÏÔʾµÄ
Õâ¸ö×Ö·ûµÄÉ«²ÊÊôÐÔ£¬ÆäÖиß4λÓÃÀ´±íʾ±³¾°É«£¬µÍ4λÓÃÀ´±íʾǰ¾°É«£¬Ò²¾ÍÊÇ×Ö·û±¾
ÉíµÄÉ«²Ê£¬É«²ÊµÄ¶ÔÕÕ±íÈçÏ£º
0 Black ºÚÉ«
1 Blue À¶É«
2 Green ÂÌÉ«
3 Cyan ÇàÉ«
4 Red ºìÉ«
5 Magenta Ñóºì
6 Brown ×ØÉ«
7 Light Gray ¸ßÁÁ»ÒÉ«
8 Dark Gray °µ»ÒÉ«
9 Light Blue ¸ßÁÁÀ¶É«
A Light Green ¸ßÁÁÂÌÉ«
B Light Cyan ¸ßÁÁÇàÉ«
C Light Red ¸ßÁÁºìÉ«
D Light Magenta ¸ßÁÁÑóºì
E Yellow »ÆÉ«
F White °×É«
Òò´Ë£¬Äã¿ÉÒÔ×éºÏ³öÄãÏëÒªµÄ×ÖÌåÉ«²Ê£¬ÔõÑù×éºÏ£¿Çë²Î¼ûÔ´³ÌÐòÏà¹Ø´úÂë¡£
ÎÒÃÇÖªµÀ 0xb8000 ÊÇÏÔ´æµÄÆðʼµØÖ·£¬Ò²¾ÍÊÇ 0,0 ´¦µÄ×Ö·ûËùÔڵĵØÖ·£¬ÄÇô x,y ´¦µÄ
×Ö·ûλÖÃÔÚÄĶùÄØ£¿ÒòΪһÐÐÏÔʾ80¸ö×Ö·û£¬¹²ÓÐ25ÐУ¬ËùÒÔÎÒÃÇ¿ÉÒÔÓÃÈçÏµĹ«Ê½¼ÆËã
³ö x,y ´¦µÄ×Ö·ûÔÚÄÚ´æÖеĵØÖ·£º0xb8000 + y*80 + x
Òò´ËÈç¹ûÄãÏëÔÚ x,y´¦ÏÔʾһ¸öºìÉ«µÄ¡®A¡¯Äã¿ÉÒÔÕâÑù×ö
char *video = 0xb8000 ;
video += y*80 + x ;
*video = 'A' ;
video++;
*video = 0x04 ;
ÏÂÃæÎÒÃÇ¿´¿´ÔõÑù´¦Àí¹â±ê
Ê×ÏÈ£¬ÎÒÃÇÒªÖªµÀÎÒÃÇÓÐÁ½¸ö¶Ë¿Ú£¬¶Ë¿ÚºÅ·Ö±ðÊÇ0x3d4£¬0x3d5¡£ÕâµÚÒ»¸ö¶Ë¿ÚÓÃÓÚÌṩ
Ë÷Òý£¬µÚ¶þ¸ö¶Ë¿ÚÓÃÓÚÌṩÊý¾Ý¡£¹â±êµÄλÖôæ·ÅÔÚÒÔ14,15ΪË÷ÒýÖµµÄÁ½¸ö¶Ë¿Ú¼Ä´æÆ÷ÖÐ
¡£Ã¿Ò»¸ö¶Ë¿Ú¼Ä´æÆ÷Ö»ÓÐ8룬14ºÅ¼Ä´æÆ÷·Å´æ¹â±êµÄµÍ8룬15ºÅ¼Ä´æÆ÷´æ·Å¹â±êµÄ¸ß8λ
±ÈÈç,ÎÒÃÇÒª°Ñ¹â±ê¶¨Î»µ½ x,y ´¦£¬Ê×ÏÈÎÒÃÇÒªµÃµ½´Ë´¦µÄÆ«ÒÆÁ¿£ºoffset = y * 8 + x
È»ºó°ÑµÍ8λ·Åµ½ 14ºÅ¼Ä´æÆ÷À¸ß8λ·Åµ½15ºÅ¼Ä´æÆ÷À¾ÍÏñÕâÑù£º
out 0x3d4 , 14 ;//Ö¸¶¨·ÃÎÊ14ºÅ¼Ä´æÆ÷
out 0x3d5 , offset >> 8 ;
out ox3d4 , 15 ;
out 0x3d5 , offset ;
(×¢£¬Õâ²»ÊÇ×îÖÕ¿ÉÖ´ÐеĻã±à´úÂ룬ֻÊÇÒ»¸öʾÒâ´úÂ룬ʵ¼Ê´úÂëÇë²Î¿¼Ô´³ÌÐò£©
ÒªµÃµ½¹â±êλÖÿÉÒÔ¶ÁÕâÁ½¸ö¼Ä´æÆ÷µÄÖµ£¬µÃµ½Æ«ÒÆÁ¿£¬È»ºó»»Ëã³Éx,y£¬ÏêÇéÇë²Î¿´Ô´³Ì
Ðò¡£
ÏÂÃ棬ÎÒÃǽ«½øÈëÖ÷Ì⣬½«½²ÊöÒ»ÏÂÔõÑù´¦Àí¼üÅÌÊäÈë¡£
´¦Àí¼üÅÌÊäÈëÓÐÁ½ÖÖ·½Ê½£¬Ò»ÊÇͨ¹ýÑ»·¾ÍÐУ¬ÔÚÖ÷³ÌÐòÖв»¶ÏµÄ²éѯ0x60¶Ë¿ÚÊÇ·ñÓÐÊý
¾Ý£¬Èç¹ûÓÐÊý¾ÝÔò±íʾÓмüÅÌÊäÈ룬ÇÒ´ËÊý¾Ý¾ÍÊÇÊäÈëµÄ¼üµÄ¼üÅÌɨÃèÂ룬½«É¨ÃèÂëת»»
³ÉÏàÓ¦µÄASCIIÂ룬ȻºóÏÔʾ¾ÍÐС£ ÕâÖÖÇé¿ö·Ç³£¼òµ¥£¬ÎÒÃǾͲ»ÏêϸÃèÊöÁË£¬Äã¿ÉÒÔ¸Ä
¶¯±¾Ô´³ÌÐòÓôËÖÖ·½Ê½ÊµÏÖ¡£ÕâÀÎÒÃdz£ÓÃÒ»ÖÖеķ½Ê½½øÐУ¬Õâ¾ÍÊÇͨ¹ýÖжϽøÐС£
ҪʹÓÃÖжϷ½Ê½£¬ÎÒÃǾͱØÐë±àд×Ô¼ºµÄÖжϴ¦Àí³ÌÐò£¬²¢ÇÒÒªÈÃCPUÖªµÀ´ËÖжϵÄÖжϴ¦
Àí³ÌÐòÔÚʲôµØ·½£¬Õâͨ¹ýIDT£¨ÖжÏÃèÊö·û±í£©Íê³É¡£´Ë±íµÄÿһ¸ö±íÏî¶ÔÓ¦Ò»¸öÖжϣ¬
ÿһ¸ö±íÏָÃ÷´ËÖжϵÄÖжϴ¦Àí³ÌÐòÔÚʲôµØ·½¡£Òò´ËÊ×ÒªµÄÈÎÎñÊÇÒª¹¹ÔìÒ»¸öÖжÏ
ÃèÊö·û±í¡£
ÖжÏÃèÊö·û±íÒ»¹²¿ÉÓÐ256Ï¼´256¸öÖжϡ£Í·ÈýÊ®¶þÏҲ¾ÍÊÇ0~31ºÅÖжϣ¬ÒѾ±»CPU
¼°Ó²¼þËùÕ¼ÓÃÁË£¬Òò´ËÎÒÃÇÐèÒª´ÓµÚÈýÊ®ÈýÏî¼´32ºÅÖжϿªÊ¼¹¹ÔìÎÒÃÇ×Ô¼ºµÄÖжϼ°ÖжÏ
·þÎñ³ÌÐò
ÖжÏÃèÊö·ûÿÏîÕ¼8¸ö×Ö½Ú£¨64룩£¬ËùÒÔÎÒÃǶ¨ÒåÈçϵÄÒ»¸ö½á¹¹À´´¦ÀíËü£º
typedef struct{
unsigned long dword0 ;
unsigned long dword1 ;
} segment_desc ;
ÏÂÃæÊÇÎÒÃǶ¨ÒåÖжÏÃèÊö·û±íµÄ³ÌÐò£º
segment_desc idt[ 256 ] ; /* ÖжϺŠ0~255 */
unsigned long idt_desc[ 2 ] ;
unsigned long idt_addr ;
unsigned long keyboard_addr ;
unsigned long idt_offset = 0x8 ; /* IDT ÔÚ GDT ÖеÄλÖÃ,´Ë³ÌÐòÖÐÒ²ÊÇ´úÂë¶ÎÔÚ
GDTÖеÄλÖà */
// ·¢ËÍ4¸öICW
ToPort( 0x20 , 0x11 ) ;
ToPort( 0xA0 , 0x11 ) ;
ToPort( 0x21 , 0x20 ) ;
ToPort( 0xA1 , 0x28 ) ;
ToPort( 0x21 , 0x4 ) ; // ÔÚ Inter ³ö²úµÄÓ²¼þÖУ¬PICÖ®¼äµÄÁªÏµÊÇ
ToPort( 0xA1 , 0x2 ) ; // °Ñ PIC1µÄIRQ2 ͬ PIC2 µÄIRQ1 ÁªÏµÆðÀ´
ToPort( 0x21 , 0x1 ) ;
ToPort( 0xA1 , 0x1 ) ;
// ÏÂÃæÉ趨ÖжÏÆÁ±Î×Ö£¬Ö»Ðí¿É¼üÅÌÖжÏ
ToPort( 0x21 , 0xFD ) ;
ToPort( 0xA1 , 0xFF ) ;
keyboard_addr = ( unsigned long )keyboard_interrupt ; /* ¼üÅÌÖжϴ¦Àí³ÌÐò
µÄλÖà */
idt[ 0x21 ].dword0 = ( keyboard_addr & 0xffff ) | ( idt_offset << 16 ) ;
idt[ 0x21 ].dword1 = ( keyboard_addr & 0xffff0000 ) | 0x8e00 ;
/* µÃµ½Õû¸öIDTµÄλÖÃÃèÊö */
idt_addr = ( unsigned long )idt ;
idt_desc[ 0 ] = 0x800 + ( ( idt_addr & 0xffff ) << 16 ) ;
idt_desc[ 1 ] = idt_addr >> 16 ;
__asm__( "lidt %0\n""sti" : "=m"( idt_desc ) ) ; /* ÓÃlidtÖ¸ÁîÔØÈë IDT ±í£¬
²¢Óà sti Ö¸ÁÖжÏ*/
ÏÂÃæÎÒÃÇÀ´½âÊÍÒ»ÏÂÕâ¸ö³ÌÐò
ToPortÊdzÌÐò¶¨ÒåµÄÒ»¸öº¯Êý£¬¾ßÌå´úÂëÇë¼ûÔ´³ÌÐò£¬ÕâÀïÖ»ÐèÒªÖªµÀ£¬Ëü°ÑÓɵڶþ¸ö²Î
ÊýÖ¸¶¨µÄÊý¾Ý£¬·¢µ½ÓɵÚÒ»¸ö²ÎÊýÖ¸¶¨µÄ¶Ë¿ÚÖÐÈ¥¡£
ÏÈÀ´¿´¿´ÕâÁ½ÐÐ
idt[ 0x21 ].dword0 = ( keyboard_addr & 0xffff ) | ( idt_offset << 16 ) ;
idt[ 0x21 ].dword1 = ( keyboard_addr & 0xffff0000 ) | 0x8e00 ;
Ò»¸ö IDT ±íÏîÓÐ64볤£¬0~15λÊÇÖжϴ¦Àí³ÌÐòµØÖ·µÄµÍ16룬16~31ÊÇÖжϴ¦Àí³ÌÐòËù
ÔڵĶÎÔÚGDTÖеÄλÖ㨲μûµÚ¶þƪ£©¡£
×î¸ßµÄ16λÊÇÖжϴ¦Àí³ÌÐòµØÖ·µÄ¸ß16룬¶øÁôϵÄÖмäµÄ16λÊÇÓÃÀ´±íÃ÷´ËÊÇÒ»¸öÖжÏ
ÃÅ»¹ÊÇÒ»¸öÏÝÚåÃÅ»¹ÊÇÒ»¸öÈÎÎñÃÅ£¬¼°ÊÇ16λÖжϻ¹ÊÇ32λÖжϵȣ¬·Ç³£¸´ÔÓ£¬ÒªÏëÏêϸ
Á˽âÇë²é¿´Intel CPU ¿ª·¢ÈËÔ±ÊֲᣨÍøÉÏÓÐϵģ¬Ã»ÕÒµ½µÄ¿ÉÒÔÕÒÎÒÒª£©¡£ÐÒÔ˵ÄÊÇ£¬
ÎÒÃDz»ÐèÒª¹ÜµÃÌ«¶à£¬Ö»Ðè¼ÇסÔÚÕý³£Çé¿öÏÂÊÇÖÃΪ0x8e00¾ÍÐС£
ÏÂÃæÎÒÃÇÏêϸ½²Ò»Ï´úÂëÖеġ°// ·¢ËÍ4¸öICW¡±²¿·Ý
ÎÒÃÇÏÖÔÚÒѾ֪µÀ£¬Òª½¨Á¢Öжϣ¬ÎÒÃÇÐèÒªÌî³ä IDT£¨ ÖжÏÃèÊö·û±í£©£¬ËüÐèÒªÖ¸³öµ±·¢
ÉúÖжÏʱ£¬Ó¦Ìøµ½ÄĶùÈ¥Ö´ÐС£
ΪÁËʹÖжÏϵͳÆð×÷Óã¬ÎÒÃÇÐèÒª¶ÔPIC(¿É±à³ÌµÄÖжϿØÖÆÆ÷£©½øÐбà³Ì£¬PIC Êǿɱà³Ì
µÄÖжϿØÖÆÆ÷£¬Ëü¿ÉÒÔ´¦ÀíÓ²¼þÖжÏÇëÇó£¨IRQ0,IRQ1..µÈµÈ)£¬Èç¹ûûÓÐPIC£¬ÎÒÃǾͲ»µÃ
²»°´¹æÔòÈ¥²éѯÄÄÒ»¸öÓ²¼þ·¢ÉúÁËÖжϣ¬ÓÐÁËPIC£¬µ±Ó²¼þ·¢ÉúÖжÏʱ£¬PIC°ÑÖжÏÐźÅËÍ
µ½CPU£¬CPU´¦ÀíÖжϡ£ÎÒÃÇʵ¼ÊÉÏÓÐÁ½ÉÏPIC£¬µÚÒ»¸öPIC1(¶Ë¿ÚºÅ0x20~0x21)´¦ÀíIRQ0~IR
Q7µÄÇëÇ󣬵ڶþ¸öPIC2(¶Ë¿ÚºÅ0xA0~0xA1)´¦Àí IRQ8~IRQ15 µÄÇëÇó
CPUÖ»ÖªµÀÂß¼ÒâÒåÉϵÄÖжϣ¬²»Çø·ÖÊÇÎïÀíÉϵÄÈí¼þÖжϻ¹ÊÇÓ²¼þÖжϣ¬Òò´ËÎÒÃDZØÐë°Ñ
CPU²»ÖªµÀµÄÎïÀíÖжϣ¬Ó³ÉäΪCPUÖªµÀµÄÂß¼ÒâÒåÉϵÄÖжϡ£ÔÚʵģʽÏ£¬ÕâÏ×÷ÓÉBIO
SÀ´×ö£¬ÔÚ±£»¤Ä£Ê½ÏÂÐèÒªÎÒÃÇ×Ô¼º×ö¡£
Òò´ËÎÒÃÇÐèÒª³õʹ»¯PICs£¬Õâͨ¹ý·¢ËÍһЩICW(³õʼ»¯ÃüÁî×Ö£©À´ÊµÏÖ¶ÔPICsµÄ¿ØÖÆ£¬Ëü
ÃDZØÐë±»¾«È·µÄÒÀ´ÎÐò·¢ËÍ£¬ÒòΪ£¬ËüÃÇÖ®¼äÊÇÏ໥ÒÀÀµµÄ
1. ·¢ËÍ ICW1 µ½ PIC1(20h) Óë PIC2(A0h) ÖÐ
2. ·¢ËÍ ICW2 µ½ PIC1(21h) Óë PIC2(A1h) ÖÐ
3. ·¢ËÍ ICW3 µ½ PIC1(21h) Óë PIC2(A1h£©ÖÐ
4. ·¢ËÍ ICW4 µ½ PIC1(21h) Óë PIC2(A1h£©ÖÐ
ICW1 ÓÃÀ´¸æËßPIC, ´æÔÚICW4£¬£¨µ±Á½¸öPIC´®Áª¹¤×÷ʱ£¬ÕâÊDZØÐëµÄ£©
ICW2 ÓÃÀ´¸æËßPIC£¬°Ñ IRQ0 Óë IRQ7 Ó³É䵽ʲôµØ·½
(ÿһ¸öPICÓа˸ö¹Ü½Å´¦ÀíÖжÏ(IRQ0~IRQ7£©
ICW3 ÓÃÀ´¸æËßPIC£¬ËüÃÇÖ®¼äÓ¦µ±Óü¸ºÅIRQ(µÚ¼¸¸ù¹Ü½Å)½øÐÐͬÐÅ
ICW4 ÓÃÀ´¸æËßPIC£¬ÎÒÃǹ¤×÷ÔÚ±£»¤Ä£Ê½£¬²¢ÇÒÊÇÓÉÈí¼þÀ´´¦Àí»¹ÊÇ×Ô¶¯´¦ÀíÖжÏ
ICW1µÄ½á¹¹
7 6 5 4 3 2 1 0
0 0 0 1 M 0 C I
I : Èç¹û ICW3 ºóÃ滹ÓÐ ICW4£¬ÔòÖÃλ
C : Èç¹û²»ÖÃ룬±íÃ÷ÕâÁ½¸ö PIC ¹¤×÷ÔÚ´®Áª×´Ì¬ÏÂ
M : ±íÃ÷ IR0 µ½ IR7 µÄÏßÊÇˮƽ´¥·¢£¬ÔÚPC»úÖУ¬ÕâλӦΪ0(±ßÑØ´¥·¢)
ICW2 ±íÃ÷ÁË IRQ0 ÔÚÖжÏÏòÁ¿±íÖеĵØÖ·£¬ÔÚ±£»¤Ä£Ê½Ï£¬ÄãÓ¦µ±¸Ä±äËü
7 6 5 4 3 2 1 0
A7 A6 A5 A4 A3 0 0 0
IRQ1 ÔÚÖжÏÏòÁ¿±íÖеĵØַΪ IRQ0µÄ+1,IRQ2~IRQ7ÒÔ´ËÀàÍÆ
ICW3 Ö»ÔÚ ÕâÁ½¸öPICÊÇÔÚ´®Áª¹¤×÷״̬ϲű»·¢ËÍ£¨ICW1 µÄCλÖÃ0£©£¬ËüµÄÄ¿µÄÊÇÔÚÁ½
¸öPIC¼ä½¨Á¢ÁªÏµ
ICW3 ¹ØÓÚ PIC1 µÄ½á¹¹
7 6 5 4 3 2 1 0
IR7 IR6 IR5 IR4 IR3 IR2 IR1 IR0
Èç¹û IR0 ÊÇÖÃ0µÄ£¬Ôò±íÃ÷´Ë¸ùÏßÁªµ½Ò»¸öÍâΧÉ豸
Èç¹û IR0 ÊÇÖÃ1µÄ£¬Ôò±íÃ÷´Ë¸ùÏßÓëPIC2Áª½á
ÆäÓàµÄÓë´ËÀàËÆ
ICW3 ¹ØÓÚ PIC2 µÄ½á¹¹
7 6 5 4 3 2 1 0
0 0 0 0 I R Q
×îºó3λÊÇPIC1µÄ£¬ÓëPIC2ÏàÁª½áµÄIRQºÅ
ICW4 µÄ½á¹¹
7 6 5 4 3 2 1 0
0 0 0 0 0 0 EOI 80x86
EOI ±íÃ÷ÖжϵÄ×îºóÊÇ×Ô¶¯´¦Àí»¹ÊÇÓÉÈí¼þ¸¨Öú´¦Àí¡£ÔÚPCÖдËλͨ³£ÖÃ0£¬±íʾÈí¼þ±ØÐë
´¦ÀíÖжϵÄ×îºóɨβ¹¤×÷
80x86 ±íÃ÷PICÊÇ·ñ¹¤×÷ÔÚ80x86µÄÌåϵ½á¹¹ÏÂ
ÓÐÁËÉÏÊö»ù´¡ÖªÊ¶£¬ÄãÏÖÔÚÓ¦µ±¿ÉÒÔÀí½âÁË°É¡£
ÏÂÃæÎÒÃÇÔÙÀ´¿´¿´£ºÖжÏÆÁ±Î×Ö
PIC 1 ´¦ÀíµÄÖжÏÓÐ
0 ϵͳʱÖÓ
1 ¼üÅÌ
2 Öض¨Ïòµ½IRQ9 (PIC2µÄIRQ1)£¬Èç¹û´Ëλ±»ÖÃ1£¬ÔòÆÁÄ»µôËùÓÐÀ´×ÔPIC2µÄÖжÏ
3 ´®¿Ú 1 (COM2/4)
4 ´®¿Ú 2 (COM1/3)
5 Éù¿¨
6 ÈíÇý
7 ²¢Ðж˿Ú
PIC 2 ´¦ÀíµÄÖжÏÓÐ
0 ʵʱʱÖÓ
1 À´×Ô IRQ2 (PIC1)
2 ±£Áô
3 ±£Áô
4 Êó±ê
5 Êýѧд¦ÀíÆ÷
6 Ó²ÅÌ
7 ±£Áô
µ±Ä³Î»ÖÃλ0±íʾÔÊÐíÆä·¢³öÖжÏÇëÇó£¬ÖÃΪ1±íʾÆÁ±ÎÆäÖжÏÇë¾È
³ÌÐòÖУ¬ÓÐÕâÑùÁ½ÐдúÂë:
ToPort( 0x21 , 0xFD ) ;
ToPort( 0xA1 , 0xFF ) ;
ÆäÖÐ 0xFD ¾ÍÊÇ 11111101 ;¼´Ö»ÔÊÐí PIC1µÄµÚ¶þ¸öÖжÏÇëÇ󣬼´¼üÅÌÖжÏÇëÇó¡£
Í깤£¡±¾ÆªÈÎÎñÒѾʤÀûÍê³É~~~ ^_^£¬ËùÓÐÔ´´úÂë¿ÉÔÚÈçϵØÖ·ÏÂÔØ
ftp://202.118.239.46/Incoming/Other/BTC/temp/pyos/pyos3.zip
BTW:
ÔÚ±¾ÊµÑé½øÐеĹý³ÌÖУ¬ÔÚBBSÉϵõ½Á˺ܶàÀÏʦͬѧµÄ¹ÄÀø£¬ÕýÊÇÓÉÓÚÕâÖÖÖ§³ÖÁ¦Á¿µÄ
´æÔÚ£¬Ê¹ÎÒ»ñµÃÁ˽«±¾ÊµÑé½øÐÐÏÂÈ¥µÄÁ¦Á¿£¬ÔÚ´ËÉî±í¸Ðл£¡Í¬Ê±¶ÔÓÚ´ËÖв»¼ÆÆäÊýµÄ´í
Î󣬷dz£Ï£Íû¸÷λÀÏʦ¡¢Í¬Ñ§¡¢´óţСţ:P~~£¬ÅúÆÀÖ¸½Ì£¡
ÈÔÈ»Áô¸ömail:
xieyubo@126.com
©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤
alphame (springÊÇ´ºÌì) ÓÚ 2003Äê11ÔÂ29ÈÕ14:49:42 ÐÇÆÚÁù ˵µÀ:
Ï£ÍûÄܼÌÐøÏÂÈ¥£¬
¹Ø×¢ ing
¡¾ ÔÚ iamxiaohan (ä캮) µÄ´ó×÷ÖÐÌáµ½: ¡¿
: When Do We Write Our Chinese OS?(3)
: ÔÚÉÏһƪÖÐÎÒÃÇʵÏÖÁËÒ»¸öÕæÕýÒâÒåÉϵÄÒýµ¼³ÌÐò£¬´ËÒýµ¼³ÌÐò½«¼ÆËã»ú´ÓÆô¶¯×´Ì¬Ê±µÄ
: 16λʵģʽתµ½ÁË32λµÄ±£»¤Ä£Ê½Ï£¬²¢ÇÒ½«Ò»¸öÓÃCÓïÑÔдµÄÕæÕýµÄÄÚºËÔØÈëÁËÄÚ´æÖ´
: ÐУ¬Òýµ¼³ÌÐòµÄ¹¤×÷ÒѾÍê³É£¬½ÓÏÂÀ´µÄ¹¤×÷¾ÍÊDZàдһ¸öÓÅÁ¼µÄ²Ù×÷ϵͳµÄÄںˣ¬ÕâÊÇ
: Ò»¸ö·Ç³£¾Þ´óµÄ¹¤³Ì£¬ÎÒÃÇÐèÒªÒ»²½Ò»²½µÄÀ´Íê³É£¬Í¬Ñù£¬½ñÌìÎÒÃÇÖ»Íê³É·Ç³£·Ç³£Ð¡µÄ
: Ò»²½¡£ÔÚÉÏһƪÖУ¬ÄÚºËÖ»ÊÇÏÔʾ³öÒ»¸öÌáʾÓ±êÖ¾×ÅÄÚºËÒѾÆô¶¯ÁË£¬Ëü»¹²»¾ßÓÐͬ
: Óû§µÄ½»»¥¹¦ÄÜ£¬ÔÚÕâһƪÖУ¬ÎÒÃǽ«Íê³ÉÒ»¸ö¿ÉÒÔ½ÓÊÜÓû§¼üÅÌÊäÈëµÄÄںˣ¬ÕâÊÇÄÚºË
: ¾ßÓн»»¥¹¦ÄܵĵÚÒ»²½¡ª¡ªÄܽÓÊÜÓû§ÊäÈë¡£
: ±¾ÆªËùʵÏÖµÄÄÚºËÖ÷Òª²ÉÓÃC++ÓïÑÔÊéд£¬Öжϴ¦Àí²¿·ÖÓõ½Á˺ÜСһ¶Î»ã±à´úÂ룬Òò´Ë
©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤
hotman (·ç) ÓÚ Sat Nov 29 16:45:34 2003 ˵µÀ:
Perfectly£¬Ô¸Äã¼ÌÐø¼á³ÖÏÂÈ¥£¡
ÌἸ¸ö½¨Ò飺
1£¬×îºÃ²»ÒªÊ¹ÓÃC++À´±àдÄں˵ÄÒµÎñ²¿·Ö£¬×îºÃʹÓÃC£¬»ã±à·½ÃæÒ²ÈçÄãËùÓ᪡ªAT&T»ã
±à£¬±Ï¾¹ÕâÖÖ»ã±àÁé»î£¬ÀýÈçÔÚǶÈëCʱ¿ÉÒÔÊÖ¹¤ÓÅ»¯¡£ÏȲ»ËµÎªÊ²Ã´²»ÒªÊ¹ÓÃC++£¬´ÓÄ¿
Ç°Ëù¿´£¬Ó¦ÓúܹãµÄ¿ª·¢ÔÂëµÄ²Ù×÷ϵͳºÜ¶à¶¼ÊÇʹÓô¿C±àÒëµÄ£¬ÀýÈçLinux£¬Nucleus£¬
MinixµÈ£¬²»¹ý²»ÖªµÀµçÐÅϵͳvxworksÊÇ·ñÒ²ÊÇʹÓô¿C±àд£¬Unix¿Ï¶¨ÁË£¬·ñÔòCÊÇËÔì
³öÀ´µÄ:-) Ö®ËùÒÔʹÓô¿C£¬Ò»·½ÊÇÔ´ÓÚÆä¿ÉÒÆÖ²ÐÔ£¬ÎÒ¸öÈËÈÏΪÆäÒÆÖ²ÐÔÖ÷Ҫȡ¾öÓÚ±àÒë
ϵͳ£¬ºÜ¶àϵͳ¿ÉÄÜ»¹²»Ö§³ÖC++±àÒ룬ͬʱC++¹æ·¶µÄ²»Í¨Ò²ÊǸöÎÊÌ⣻ÁíÒ»·½Ã棬ÔÚ±à
ÒëϵͳÉÏ£¬´¿CÒª³ÉÊìÓÚC++£¬Õâ±Ø½«´øÀ´Ö´ÐÐÎļþµÄËٶȺͿռäÉϵĽÏÖ®ÔöÇ¿¡£»¹ÓÐÀýÈç
¿ØÖÆ·½ÃæCҪǿÓÚC++£¬ÀýÈç¶ÔÄÚ´æµÄ¶¨Î»ÉÏ¡£½ø³Ì¿ØÖÆ¿éµÄ³ÉÔ±¶¨Î»£¬ÒòΪÄãÔÚ½«À´µÄϵ
ͳµ÷ÓÃÇ°µÄ»ã±à½×¶Î¿Ï¶¨ÒªÉæ¼°µ½ÕâЩ·½Ã棬Èç¹ûʹÓÃC++¿ÉÄܵ¼ÖÂÄã±È½ÏÃÔã:-)
2£¬²»ÖªµÀÄãÄ¿Ç°ÊÇ·ñ¶ÔÄãËùÒª×öµÄOSÓиöϵͳ½á¹¹¹æ»®£¬¿ÉǧÍò±ðÏëµ½ÄÄдµ½ÄÄÀ·ñÔò
»á´øÀ´ºóÃæµÄÄ£¿é¿ª·¢µÄÎÊÌ⣬ÀýÈçÔÚ½ø³ÌÇл»ÉÏÃ棬ÄãʹÓöÑÕ»·½Ê½Çл»»¹ÊÇʹÓÃinte
lÌṩµÄ¼ÓÔØ״̬¶ÎÀ´Çл»£¬Õ⽫Ҳµ¼ÖÂÓû§½ø³ÌÎÊÌ⣬ÀýÈçÄãÊÇ·ñʹÓþֲ¿ÃèÊö¶ÎÀ´¸ã¶¨
£¿ÎÒÏëÒ²²»´ó¿ÉÄÜ£¬ÄÇЧÂÊÌ«µÍÁË¡£Òò´Ë×îºÃÒªÓиöÕûÌåµÄ¹æ·¢£¬½«OS·ÖΪ¼¸´ó²¿·Ö£ºÆô
¶¯³õʼ»¯²¿·Ö£¬ÄÚ´æ³õʼ»¯ºÍ¹ÜÀí²¿·Ö£¬I/Oϵͳ¹ÜÀí²¿·Ö£¬Îļþϵͳ¹ÜÀí²¿·Ö£¬¸ßËÙ»º³å
¹ÜÀí²¿·Ö£¬½ø³Ìµ÷¶È¹ÜÀí²¿·ÖµÈµÈÈô¸É´ó¿é£¬Æäʵ³ýÁËÆô¶¯²¿·Ö£¬ºóÃæµÄ¸÷¸ö²¿·ÖÍêÈ«¿É
ÒÔÔÚwindowsϽøÐбàÒëµ÷ÊÔÁË¡£ÕâÒ²¿ÉÒÔÒýÈë¸ü¶àµÄÈ˲μӽøÀ´Ò»Æð·ÖÏí¿ª·¢µÄºÍ³É¾Í¸Ð
ºÍ¿ìÀÖ:-)
3£¬ÎÒ»¹ÊÇÄǾäÀÏ»°¡ª¡ªÇ§Íò±ð±§×ÅΪ¹úÕù¹âµÄʹÃüÈ¥×ö£¬ÈÃÐËȤʹȻ¡£·ñÔò¼ÙÈçÍòÒ»³É¹¦
ÁË£¬¶¼³¶²»Çå³þ˵ŦÀÍ´óºÍÅÅÃû˳ÐòÁË:-) ¿ª¸öÍæЦ¶øÒÑ£¬Ï£Íû´ó¼ÒÐËȤËùÖ°ɡ£
4£¬×îºÃÔÚѧУ¾Í½«Æä¸ã¸öÄ£Ñù³öÀ´£¬ÒòΪÈÕºó¹¤×÷ÁË£¬Ñ¹Á¦´óÁË£¬¶øÇÒÓ빤×÷Î޹صĻ°£¬
¾ÍºÜÄÑÔÙÓÐÕâ·ÝÐÄÇ飬ÕûÈÕΪÁËÇ®¶ø±¼²¨¿àÁË:-)£¬±Ïҵʱ£¬ÎÒÒ²¿¼ÂÇдOS£¬Ò²Ð´ÁËÒ»µãµã
£¬ÀýÈçÆô¶¯²¿·Ö£¬½ø³Ìµ÷¶ÈºÍÄÚ´æ¹ÜÀí·½ÃæµÄ£¬²»¹ýÏÖÔÚÕûÈÕֻΪÁËMoney¶ø·¸³î£¬ÓÈÆäÊÇ
ÏÖÔÚÕâ¸öITµÄ¶¬Ìì¡£
5£¬ÔÝʱ¾Í˵µÀÕâÀï°É£¬±È½ÏÓôÃƵÄÊÇBBSµÄ»ØÐŹ¦ÄÜ¡ª¡ª²»Ð¡ÐÄÔÚʹÓÃÊäÈ뷨ʱ£¬¶à°´ÁË
¼¸´ÎESCµ¼ÖÂÇ°ÃæдµÄÒ»´ó¶ÑÈ«¶¼¶ªÁË£¬Õâ˵ʲôҲµÃÏòÍøÂç¹ÜÀíÌá¸öÎÊÌâµ¥¡£ÒÔÉÏ¿´µ½µÄ
¶¼ÊÇ°³ÐÁÐÁ¿à¿àÖØÇõÄÒ»²¿·Ö£¬Ò²²»ÏëÔÙ¶à»ØÒäÁË:-)
¡¾ ÔÚ iamxiaohan µÄ´ó×÷ÖÐÌáµ½: ¡¿
: When Do We Write Our Chinese OS?(3)
: ÔÚÉÏһƪÖÐÎÒÃÇʵÏÖÁËÒ»¸öÕæÕýÒâÒåÉϵÄÒýµ¼³ÌÐò£¬´ËÒýµ¼³ÌÐò½«¼ÆËã»ú´ÓÆô¶¯×´Ì¬..
: 16λʵģʽתµ½ÁË32λµÄ±£»¤Ä£Ê½Ï£¬²¢ÇÒ½«Ò»¸öÓÃCÓïÑÔдµÄÕæÕýµÄÄÚºËÔØÈëÁËÄÚ´..
: ÐУ¬Òýµ¼³ÌÐòµÄ¹¤×÷ÒѾÍê³É£¬½ÓÏÂÀ´µÄ¹¤×÷¾ÍÊDZàдһ¸öÓÅÁ¼µÄ²Ù×÷ϵͳµÄÄںˣ¬..
: Ò»¸ö·Ç³£¾Þ´óµÄ¹¤³Ì£¬ÎÒÃÇÐèÒªÒ»²½Ò»²½µÄÀ´Íê³É£¬Í¬Ñù£¬½ñÌìÎÒÃÇÖ»Íê³É·Ç³£·Ç³£..
: Ò»²½¡£ÔÚÉÏһƪÖУ¬ÄÚºËÖ»ÊÇÏÔʾ³öÒ»¸öÌáʾÓ±êÖ¾×ÅÄÚºËÒѾÆô¶¯ÁË£¬Ëü»¹²»¾ß..
: Óû§µÄ½»»¥¹¦ÄÜ£¬ÔÚÕâһƪÖУ¬ÎÒÃǽ«Íê³ÉÒ»¸ö¿ÉÒÔ½ÓÊÜÓû§¼üÅÌÊäÈëµÄÄںˣ¬ÕâÊÇ..
: ¾ßÓн»»¥¹¦ÄܵĵÚÒ»²½¡ª¡ªÄܽÓÊÜÓû§ÊäÈë¡£
: ±¾ÆªËùʵÏÖµÄÄÚºËÖ÷Òª²ÉÓÃC++ÓïÑÔÊéд£¬Öжϴ¦Àí²¿·ÖÓõ½Á˺ÜСһ¶Î»ã±à´úÂ룬Ò..
: ´Ó±¾ÆªÖÐÄ㻹½«ÖªµÀÔõÑùʵÏÖC++Óë»ã±àÓïÑԵĻìºÏ±à³Ì£¬±¾Äں˿ª·ÅÔ´Â룬²ÉÓõÄÊ..
: ÀàģʽµÄ¿ª·Å½á¹¹£¬Äã¿ÉÒÔºÜÇáËɵÄÐÞ¸ÄËü£¬ÈÃËü¹¦ÄܸüÇ¿£¬ÐÔÄÜÀíºÃ¡£
: ÕâÀïÏëÊ×ÏȽéÉÜһϱ¾Äں˵ijÌÐò½á¹¹£¬ÕâÑùÄãÔÚÔĶÁÔ´´úÂëµÄʱºò£¬»áһĿÁËÈ»¡£
: ±¾Äں˶¨ÒåÁËÒ»¸öTVideoÀ࣬·â×°Á˶ÔÓÚVGAÏÔ¿¨µÄ´¦Àí£¬ËüµÄÉùÃ÷ÈçÏ£º
: class TVideo{
: public:
: static TPos GetPos() ;
: static void SetPos( TPos& pos ) ;
: static void SetPos( unsigned short X , unsigned short Y ) ;
: static void ClearScreen() ;
: static void Print( const char *msg , EColor FrontColor = clWhite ,
: (ÒÔÏÂÒýÑÔÊ¡ÂÔ...)
©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤
ecomer (ecomer) ÓÚ 2003Äê11ÔÂ29ÈÕ16:56:38 ÐÇÆÚÁù ˵µÀ:
ËäÈ»²»Ì«¶®£¬µ«¼á¾öÖ§³ÖÄã¡£
¡¾ ÔÚ iamxiaohan (ä캮) µÄ´ó×÷ÖÐÌáµ½: ¡¿
: When Do We Write Our Chinese OS?(3)
: ÔÚÉÏһƪÖÐÎÒÃÇʵÏÖÁËÒ»¸öÕæÕýÒâÒåÉϵÄÒýµ¼³ÌÐò£¬´ËÒýµ¼³ÌÐò½«¼ÆËã»ú´ÓÆô¶¯×´Ì¬Ê±µÄ
: 16λʵģʽתµ½ÁË32λµÄ±£»¤Ä£Ê½Ï£¬²¢ÇÒ½«Ò»¸öÓÃCÓïÑÔдµÄÕæÕýµÄÄÚºËÔØÈëÁËÄÚ´æÖ´
: ÐУ¬Òýµ¼³ÌÐòµÄ¹¤×÷ÒѾÍê³É£¬½ÓÏÂÀ´µÄ¹¤×÷¾ÍÊDZàдһ¸öÓÅÁ¼µÄ²Ù×÷ϵͳµÄÄںˣ¬ÕâÊÇ
: Ò»¸ö·Ç³£¾Þ´óµÄ¹¤³Ì£¬ÎÒÃÇÐèÒªÒ»²½Ò»²½µÄÀ´Íê³É£¬Í¬Ñù£¬½ñÌìÎÒÃÇÖ»Íê³É·Ç³£·Ç³£Ð¡µÄ
: Ò»²½¡£ÔÚÉÏһƪÖУ¬ÄÚºËÖ»ÊÇÏÔʾ³öÒ»¸öÌáʾÓ±êÖ¾×ÅÄÚºËÒѾÆô¶¯ÁË£¬Ëü»¹²»¾ßÓÐͬ
: Óû§µÄ½»»¥¹¦ÄÜ£¬ÔÚÕâһƪÖУ¬ÎÒÃǽ«Íê³ÉÒ»¸ö¿ÉÒÔ½ÓÊÜÓû§¼üÅÌÊäÈëµÄÄںˣ¬ÕâÊÇÄÚºË
: ¾ßÓн»»¥¹¦ÄܵĵÚÒ»²½¡ª¡ªÄܽÓÊÜÓû§ÊäÈë¡£
: ±¾ÆªËùʵÏÖµÄÄÚºËÖ÷Òª²ÉÓÃC++ÓïÑÔÊéд£¬Öжϴ¦Àí²¿·ÖÓõ½Á˺ÜСһ¶Î»ã±à´úÂ룬Òò´Ë
©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤
iamxiaohan (ä캮) ÓÚ 2003Äê11ÔÂ29ÈÕ18:59:24 ÐÇÆÚÁù ˵µÀ:
·Ç³£¸ÐлÄãµÄÖ¸µã£¡^_^
¡¾ ÔÚ hotman (·ç) µÄ´ó×÷ÖÐÌáµ½: ¡¿
: Perfectly£¬Ô¸Äã¼ÌÐø¼á³ÖÏÂÈ¥£¡
:
: ÌἸ¸ö½¨Ò飺
: 1£¬×îºÃ²»ÒªÊ¹ÓÃC++À´±àдÄں˵ÄÒµÎñ²¿·Ö£¬×îºÃʹÓÃC£¬»ã±à·½ÃæÒ²ÈçÄãËùÓ᪡ªAT&T»ã
: ±à£¬±Ï¾¹ÕâÖÖ»ã±àÁé»î£¬ÀýÈçÔÚǶÈëCʱ¿ÉÒÔÊÖ¹¤ÓÅ»¯¡£ÏȲ»ËµÎªÊ²Ã´²»ÒªÊ¹ÓÃC++£¬´ÓÄ¿
: Ç°Ëù¿´£¬Ó¦ÓúܹãµÄ¿ª·¢ÔÂëµÄ²Ù×÷ϵͳºÜ¶à¶¼ÊÇʹÓô¿C±àÒëµÄ£¬ÀýÈçLinux£¬Nucleus£¬
: MinixµÈ£¬²»¹ý²»ÖªµÀµçÐÅϵͳvxworksÊÇ·ñÒ²ÊÇʹÓô¿C±àд£¬Unix¿Ï¶¨ÁË£¬·ñÔòCÊÇËÔì
: ³öÀ´µÄ:-) Ö®ËùÒÔʹÓô¿C£¬Ò»·½ÊÇÔ´ÓÚÆä¿ÉÒÆÖ²ÐÔ£¬ÎÒ¸öÈËÈÏΪÆäÒÆÖ²ÐÔÖ÷Ҫȡ¾öÓÚ±àÒë
: ϵͳ£¬ºÜ¶àϵͳ¿ÉÄÜ»¹²»Ö§³ÖC++±àÒ룬ͬʱC++¹æ·¶µÄ²»Í¨Ò²ÊǸöÎÊÌ⣻ÁíÒ»·½Ã棬ÔÚ±à
: ÒëϵͳÉÏ£¬´¿CÒª³ÉÊìÓÚC++£¬Õâ±Ø½«´øÀ´Ö´ÐÐÎļþµÄËٶȺͿռäÉϵĽÏÖ®ÔöÇ¿¡£»¹ÓÐÀýÈç
: ¿ØÖÆ·½ÃæCҪǿÓÚC++£¬ÀýÈç¶ÔÄÚ´æµÄ¶¨Î»ÉÏ¡£½ø³Ì¿ØÖÆ¿éµÄ³ÉÔ±¶¨Î»£¬ÒòΪÄãÔÚ½«À´µÄϵ
©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤
LLRRPP (¡âСºìÌÒ¡á--áÝáåÖÐ) ÓÚ 2003Äê11ÔÂ29ÈÕ23:01:06 ÐÇÆÚÁù ˵µÀ:
ÄãÃǾÍÊÇ×ÔÓÉѽ
¡¾ ÔÚ iamxiaohan (ä캮) µÄ´ó×÷ÖÐÌáµ½: ¡¿
: ·Ç³£¸ÐлÄãµÄÖ¸µã£¡^_^
: ¡¾ ÔÚ hotman (·ç) µÄ´ó×÷ÖÐÌáµ½: ¡¿
: : Perfectly£¬Ô¸Äã¼ÌÐø¼á³ÖÏÂÈ¥£¡
: : ÌἸ¸ö½¨Ò飺
: : 1£¬×îºÃ²»ÒªÊ¹ÓÃC++À´±àдÄں˵ÄÒµÎñ²¿·Ö£¬×îºÃʹÓÃC£¬»ã±à·½ÃæÒ²ÈçÄãËùÓ᪡ªAT&T»ã
: : ±à£¬±Ï¾¹ÕâÖÖ»ã±àÁé»î£¬ÀýÈçÔÚǶÈëCʱ¿ÉÒÔÊÖ¹¤ÓÅ»¯¡£ÏȲ»ËµÎªÊ²Ã´²»ÒªÊ¹ÓÃC++£¬´ÓÄ¿
: : Ç°Ëù¿´£¬Ó¦ÓúܹãµÄ¿ª·¢ÔÂëµÄ²Ù×÷ϵͳºÜ¶à¶¼ÊÇʹÓô¿C±àÒëµÄ£¬ÀýÈçLinux£¬Nucleus£¬
: : MinixµÈ£¬²»¹ý²»ÖªµÀµçÐÅϵͳvxworksÊÇ·ñÒ²ÊÇʹÓô¿C±àд£¬Unix¿Ï¶¨ÁË£¬·ñÔòCÊÇËÔì
: : ³öÀ´µÄ:-) Ö®ËùÒÔʹÓô¿C£¬Ò»·½ÊÇÔ´ÓÚÆä¿ÉÒÆÖ²ÐÔ£¬ÎÒ¸öÈËÈÏΪÆäÒÆÖ²ÐÔÖ÷Ҫȡ¾öÓÚ±àÒë
©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤
iamxiaohan (ä캮) ÓÚ 2003Äê11ÔÂ29ÈÕ23:01:49 ÐÇÆÚÁù ˵µÀ:
ʲôÒâ˼£¿
¡¾ ÔÚ LLRRPP (¡âСºìÌÒ¡á--áÝáåÖÐ) µÄ´ó×÷ÖÐÌáµ½: ¡¿
: ÄãÃǾÍÊÇ×ÔÓÉѽ
: ¡¾ ÔÚ iamxiaohan (ä캮) µÄ´ó×÷ÖÐÌáµ½: ¡¿
: : ·Ç³£¸ÐлÄãµÄÖ¸µã£¡^_^
©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤
LLRRPP (¡âСºìÌÒ¡á--áÝáåÖÐ) ÓÚ 2003Äê11ÔÂ29ÈÕ23:03:32 ÐÇÆÚÁù ˵µÀ:
¶ÔÁË
Äã´ó¼¸
¡¾ ÔÚ iamxiaohan (ä캮) µÄ´ó×÷ÖÐÌáµ½: ¡¿
: ʲôÒâ˼£¿
: ¡¾ ÔÚ LLRRPP (¡âСºìÌÒ¡á--áÝáåÖÐ) µÄ´ó×÷ÖÐÌáµ½: ¡¿
: : ÄãÃǾÍÊÇ×ÔÓÉѽ
©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤
iamxiaohan (ä캮) ÓÚ 2003Äê11ÔÂ29ÈÕ23:04:24 ÐÇÆÚÁù ˵µÀ:
´óËÄ
¡¾ ÔÚ LLRRPP (¡âСºìÌÒ¡á--áÝáåÖÐ) µÄ´ó×÷ÖÐÌáµ½: ¡¿
: ¶ÔÁË
: Äã´ó¼¸
: ¡¾ ÔÚ iamxiaohan (ä캮) µÄ´ó×÷ÖÐÌáµ½: ¡¿
: : ʲôÒâ˼£¿
©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤
LLRRPP (¡âСºìÌÒ¡á--áÝáåÖÐ) ÓÚ 2003Äê11ÔÂ29ÈÕ23:04:35 ÐÇÆÚÁù ˵µÀ:
hoho
¾´Ñö
¡¾ ÔÚ iamxiaohan (ä캮) µÄ´ó×÷ÖÐÌáµ½: ¡¿
´óËÄ
¡¾ ÔÚ LLRRPP (¡âСºìÌÒ¡á--áÝáåÖÐ) µÄ´ó×÷ÖÐÌáµ½: ¡¿
: ¶ÔÁË
: Äã´ó¼¸
: ¡¾ ÔÚ iamxiaohan (ä캮) µÄ´ó×÷ÖÐÌáµ½: ¡¿
: : ʲôÒâ˼£¿
©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
Ò³ÃæÖ´ÐÐʱ¼ä£º206.660ºÁÃë