![]() | This article has multiple issues. Please help improve it or discuss these issues on the talk page . (Learn how and when to remove these messages)
|
The following is a comparison of notable hex editors.
GUI | Console | Software license | Latest stable version | Latest release date | Windows | Macintosh | Linux | |
---|---|---|---|---|---|---|---|---|
HxD | Yes | No | Proprietary freeware | 2.5.0.0 | February 11, 2021 | Win95, WinNT4 and up | No | No |
010 Editor | Yes | No | Proprietary | 16.0.1 | August 18, 2025 | Yes | Yes | Yes |
beye | No | Yes | GPL-2.0-only or GPL-3.0-only | 6.1.0 | December 12, 2009 | Yes | Yes | Yes |
Cheat Engine | Yes | No | Proprietary freeware | 7.2 | August 14, 2021 | Yes | Yes, ver. 6.2 | No |
GNU Emacs | Yes | Yes | GPL-3.0-or-later | 29.1 [1] | July 30, 2023 | Yes | Yes | Yes |
FlexHex | Yes | No | Proprietary freeware for personal use | 2.7 | October 12, 2018 | Windows XP and up | No | No |
Hiew | No | Yes | Proprietary | 8.81 | March 24, 2024 | Yes | No | No |
ImHex | Yes | Yes | GPL-2.0-only | 1.35.4 | July 9, 2024 [2] | Yes | Yes | Yes |
VEDIT | Yes | Yes | Proprietary | 6.24.2 | Jan 1, 2015 | Yes | No | No |
UltraEdit | Yes | No | Proprietary | 26.10 (Windows) 18.0 (Linux / Mac OS X) | May 7, 2019 January 2, 2018 | Yes | Yes | Yes |
WinHex | Yes | No | Proprietary | 21.0 | December 13, 2023 | Win95 and up | No | No |
Vim | Yes | Yes | Vim | 9.1.0 [3] | January 2, 2024 | Yes | Yes | Yes |
Maximum file size | Partial file loading | Disk sector editing | Process memory editing | Data inspector | Bit editing | Insert / delete bytes | Character encodings (ao) | Search Unicode | File formats | Disassembler | File compare | Find in files | Bookmarks | Macro | Text editor | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
HxD | 8 EiB [4] | Yes | Windows 9x/NT and up | Yes | Yes | Yes | Yes | ANSI, ASCII, OEM, EBCDIC, Macintosh | Yes | No | Individual instructions only | Yes | No | Yes | No | No |
010 Editor | 8 EiB | Yes | Yes | WinNT only | Yes | Yes | Yes | ANSI, OEM, Unicode, UTF-8, EBCDIC, Custom | Yes | 300 [5] | Yes | Yes | Yes | Yes | Yes | Yes |
beye | 8 PiB | Yes | No | Yes | Yes | ANSI, EBCDIC, ASCII, Macintosh | Yes | 29 [6] | AVR, Java, x86, i386, x86-64, ARM/XScale, PowerPC, PPC64 | Yes | No | |||||
Emacs | Limited by RAM [7] [8] [9] [10] | No | Unknown | No | No | No | No | Yes | Yes [11] | Unknown | No | No | Unknown | Unknown | Yes [12] | Yes |
FlexHex | Unlimited[ citation needed ] | Yes | Yes | Yes | Yes | Yes | ANSI, OEM, UTF-16 | Yes | 2 [13] [14] | No | Yes | No | Yes | No | ||
Hiew | Unlimited[ citation needed ] | Yes | WinNT only | Yes | Yes | Yes | ASCII, OEM, Unicode, custom | Yes | No | x86, x86-64, MMX, SSE 4.2, 3DNow! - all assembler, ARM | Yes | Yes | Yes | |||
VEDIT | Standard, 2 GiB, Pro 64, unlimited[ citation needed ] | Yes | DOS version only | No | Yes | Yes | ANSI, OEM, EBCDIC, ASCII, custom | No | No | No | Yes | Yes | Yes | Yes | Yes | |
UltraEdit | >4 GiB | Yes | No | No | No | No | Yes | ANSI, OEM, EBCDIC, ASCII, Mac, Unix, UTF-8 | Yes | No | No | Yes | Yes | Yes | ||
WinHex | Unlimited[ citation needed ] | Yes | Yes | Yes | Yes | Yes | Partial support of these formats: ANSI, UNICODE, OEM, UTF-8/UTF-16, EBCDIC, ASCII | Yes | 44 [15] [16] | Only x86 Intel opcodes | Yes | Yes and replace | Yes [17] | No | ||
vim | Limited by RAM | No | No | No | No | Yes [18] | Yes | ASCII, ISO-8859, DOS (OEM), UTF-8, UTF-16, partial EBCDIC (compilation required), unicode | Yes | No | No | Yes [19] | No | Plug-in [20] | Yes | Yes |
ImHex | Unlimited | Yes | Yes | Yes | Yes | Yes | Yes | ANSI, OEM, Unicode, UTF-8, EBCDIC, Shift-JIS, Custom | Yes | 143 [21] | Yes | Yes | Yes | Yes | Yes | No |
Maximum file size | Partial file loading | Disk sector editing | Process memory editing | Data inspector | Bit editing | Insert / delete bytes | Character encodings (ao) | Search Unicode | File formats | Disassembler | File compare | Find in files | Bookmarks | Macro | Text editor |
ao: ANSI is the Windows character set, OEM is the DOS character set. Both are based on ASCII.
A buffer's size cannot be larger than some maximum, which is defined by the largest buffer position representable by Emacs integers. This is because Emacs tracks buffer positions using that data type. For typical 64-bit machines, this maximum buffer size is 2^{61} - 2 bytes, or about 2 EiB. For typical 32-bit machines, the maximum is usually 2^{29} - 2 bytes, or about 512 MiB. Buffer sizes are also limited by the amount of memory in the system.