PROGRAM 9
// FILE NAME: PROG9.CPP PROGRAMMER NAME: ANTHONY F. ORTIZ
// THIS PROGRAM CREATES TWO FUNCTIONS, PEAK AND POKE. PEAK READS A BYTE
// OF MEMORY FROM A ADDRESS. POKE WRITES A BYTE OF MEMORY TO AN ADDRESS.
#include
#include
enter_address (long int &address1, long int &address2);
display_contents (long int &address1, long int &address2);
unsigned char peak (long int address);
int main ()
{
long int address1, address2;
enter_address (address1, address2);
display_contents (address1, address2);
return 0;
}
enter_address (long int &address1, long int &address2)
{
clrscr ();
cout << "ENTER ADDRESS 1. ";
cin >> address1;
cout << "\nENTER ADDRESS 2. ";
cin >> address2;
return 0;
}
display_contents (long int &address1, long int &address2)
{
unsigned char contents;
long int count;
clrscr ();
cout << "HERE ARE THE CONTENTS OF ADDRESS " << hex << address2 << " THROUGH ADDRESS " << address1 << " IN HEX:\n\n";
for (count = address2; count >= address1; count--)
{
contents = peak (count);
cout << int (contents) << " ";
}
cout << "\n\nHERE ARE THE CONTENTS OF ADDRESS " << address2 << " THROUGH ADDRESS " << address1 << " IN CHAR:\n\n";
for (count = address2; count >= address1; count--)
{
contents = peak (count);
cout << char (contents) << " ";
}
return 0;
}
unsigned char peak (long int address)
{
unsigned char far *farptr;
unsigned char contents;
farptr = (unsigned char far *) address;
contents = *farptr;
return (contents);
}
// OUTFILE: PROG9.OUT
ENTER ADDRESS 1. 1
ENTER ADDRESS 2. 10
HERE ARE THE CONTENTS OF ADDRESS a THROUGH ADDRESS 1 IN HEX:
85 0 16 b e5 10 3f 8c 50 1
HERE ARE THE CONTENTS OF ADDRESS a THROUGH ADDRESS 1 IN CHAR:
? ? ? ? ? ? ? ? ? ?
BACK TO COMP251 PAGE.