C Interview Questions and Answers


How can I access an I O board directly?

At one level, at least, it's quite simple: you have a device register which
is actually wired up so that the bits written to it get coverted to actual voltage
levels in the real world that you can do interesting things with. In general, there
are two ways to get the bits in and out. (A particular I/O board will use one method
or the other; you'll need to consult its documentation for details.)

1. If the device is accessed via a dedicated ``I/O port'', use system-specific
functions to communicate with it. Under MS-DOS, for example, there were quasistandard
``inport'' and ``outport'' instructions.

2. If the device uses ``memory-mapped I/O'', that is, if the device register(s)
are accessed as if they were normal memory at particular, known locations within
the processor's addressing space, use contrived pointer variables to access
those locations.

Posted by:Richards