PROGRAM 11
// FILE NAME: PROG11.CPP PROGRAMMER NAME: ANTHONY F. ORTIZ
// THIS PROGRAM WRITES A BYTE TO A MEMORY ADDRESS WITH A FUNCTION CALLED
// POKE.
#include
#include
#include
enter_address (long int & address, unsigned char str []);
display_address (long int address, unsigned char str []);
unsigned char poke (long int address, unsigned char contents);
const int max = 100;
int main ()
{
long int address;
unsigned char str [max];
enter_address (address, str);
display_address (address, str);
display_address (address + 1, str);
return 0;
}
enter_address (long int & address, unsigned char str [])
{
clrscr ();
cout << "ENTER A ADDRESS (HEX): ";
cin >> address;
cout << endl << "ENTER STRING: ";
cin >> str;
clrscr ();
return 0;
}
display_address (long int address, unsigned char str [])
{
for (int count = 0; count <= strlen (str); count++)
{
poke (address, str [count]);
address = address + 2;
}
return 0;
}
unsigned char poke (long int address, unsigned char contents)
{
unsigned char far *farptr;
farptr = (unsigned char far *) address;
* (farptr) = contents;
return 0;
}
// OUTFILE: PROG11.OUT
ENTER A ADDRESS (HEX): 0xffff
ENTER STRING: anthony
anthony
BACK TO COMP251 PAGE.