A hex editor is a utility for viewing and modifying the bytes that compose a file. Any kind of data can be changed in a hex editor, making it an invaluable tool for locating undiscovered data and finding its meaning.
A hex editor has no concept of the structure of data. This is both a strength, in that it is completely generic and can edit anything, and a weakness, in that it becomes impractical to make large edits, especially where pointers and variable-length data are involved. More specialized utilities make it easier to do that.
Hex editors are called such because byte values are shown in hexadecimal, though they typically are also displayed as text on the side.
More non-ROM hacking specific information can be found at Wikipedia's Hex editor article.