?? io_port.h.svn-base
字號:
/* $Id: io_port.h,v 1.2 2002/10/15 12:26:56 gal Exp $ */#ifndef __io_port_include__#define __io_port_include__/*****************************************************************************//* Betriebssysteme *//*---------------------------------------------------------------------------*//* *//* I O _ P O R T *//* *//*---------------------------------------------------------------------------*//* Diese Klasse dient dem Zugriff auf die Ein-/Ausgabe Ports des PCs. Beim *//* PC gibt es einen gesonderten I/O-Adressraum, der nur mittels der Maschi- *//* neninstruktionen 'in' und 'out' angesprochen werden kann. Ein IO_Port- *//* Objekt wird beim Erstellen an eine Adresse des I/O-Adressraums gebunden *//* und kann dann fuer byte- oder wortweise Ein- oder Ausgaben verwendet wer- *//* den. *//*****************************************************************************//* BENUTZTE FUNKTIONEN */extern "C" void outb (int port, int value);extern "C" void outw (int port, int value);extern "C" int inb (int port);extern "C" int inw (int port);/* KLASSENDEFINITION */class IO_Port { // Adresse im I/O-Adressraum int address; public: IO_Port (int a) : address (a) {}; // OUTB: Byteweise Ausgabe eines Wertes ueber einen I/O-Port. void outb (int val) const { ::outb (address, val); }; // OUTW: Wortweise Ausgabe eines Wertes ueber einen I/O-Port. void outw (int val) const { ::outw (address, val); }; // INB: Byteweises Einlesen eines Wertes ueber einen I/O-Port. int inb () const { return ::inb (address); }; // INW: Wortweises Einlesen eines Wertes ueber einen I/O-Port. int inw () const { return ::inw (address); }; };#endif
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -