TX command code & RX respond code of module via serial com

AWOL:
I'm sorry, this is beyond me now.
Where did the value 798 magic itself from?
What are the variables "high" and "low" meant to be?

the last 3 bytes. 3rd last byte is for highbyte of the fingerprint reader address. 2nd last byte is for lowbyte of the fingerprint address. while the last byte is the checksum. 798 is the total fingerprint address that the reader can store.

byte high = {0x00}; // high byte of the fingerprint address
byte low = {0x00}; // low byte of the fingerprint address
byte checksum = {0xF8}; // checksum

the address 0, is above. but, for address 1.

byte high = {0x00}; // high byte of the fingerprint address
byte low = {0x01}; // low byte of the fingerprint address
byte checksum = {0xF9}; // checksum

while for address 2,

byte high = {0x00}; // high byte of the fingerprint address
byte low = {0x02}; // low byte of the fingerprint address
byte checksum = {0xFA}; // checksum

continously until 768 address. sorry. not 798. 768 fingerprint address. total fingerprint address that the fingerprint reader can store. i believe it is related to the Serial.available as i will key in the fingerprint address.

Serial.print("Please choose fingerprint address number to store");

while(Serial.available()){

input = Serial.read;

high = high + input;
low= low + input;
checksum = checksum + input;
}

// write the 8bytes array of the command code
Serial.write(addFingerPrint, sizeof(addFingerPrint));
Serial.write(high);
Serial.write(low);
Serial.write(checksum);
}

until here. then i stuck a little bit. coz the input from serial monitor is ASCII. while i'm using bytes. how i'm gonna convert the ascii into byte in arduino?