Well... being an open-ended task, do it the same you'd do anything else.
Stare at it a while.
Is it repeating? Might be tables of some sort.
Any ASCII (or EBCDIC, or other encoding for that matter) apparent?
As mentioned, if it's slices of a 16 (or more) bit bus, you'll see that more obviously in human-readable formats like ASCII, but less so in others...
Basic stat and crypto checks: do a frequency analysis. Do an entropy analysis. Look for sentinel codes, or magic numbers. Look for checksums or hashes (often at the top or bottom of the image).
If it's very high entropy, it's possible it is compressed or encrypted. Would be unusual for a ROM I would think, but who knows. Back in the ROM days, that sort of thing was rather expensive to do, except when absolutely needed (and that, mainly for tape and demo purposes?).
If you aren't familiar with many (or any) instruction sets, binary will just look like gibberish to you. You'll have to learn a few first -- x86, Z80, 6502 and 68k might be good starting points. This will take the better part of a year; queue up some projects to use each one, so you have motivation.
Offhand, I know that:
- Z80 machine code is pretty simple, and makes frequent use of middling-range (ASCII readable) codes. This can make it difficult to eyeball if a passage is code or data!
- x86 tends to be noisier, with occasional patches of recognizable offsets (e.g., load-immediate, absolute address, index indirect..). That is, groupings of similar numbers keep appearing, often either small addresses or offsets or values (say "01 00" = 0x0001), or addresses to the same region of memory (0x70a4, 0x70a8, ..) suggesting a data segment there. The most recognizable, and usefully so, opcodes are push reg: you regularly see a "PQR" in the hex dump, for something like PUSH BP / MOV BP, SP / PUSH SI ..., or whatever they actually are. In other words, normal (Intel ABI) function preamble!
- I haven't worked with other instruction sets in raw format very much, but the other ones that I'm familiar with are unlikely to be found in EPROMs anyway (e.g. AVR). So, thus ends my flavor text.
If nothing else, feel free to send them to someone who loves archiving stray code, like Jason Scott.
Tim