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.