Knowledge (XXG)

Hex editor

Source 📝

25: 232: 144: 254:
Typically, a template is represented as a list of labeled text boxes, such that individual values of a file can be easily edited in the appropriate format (e.g., as string, color, or decimal number). Without template support, it is necessary to find the right offset in a file where the value that is
262:
Templates can be stored as files, thereby exchanged by users, and are often shared publicly over the manufacturer's website. Most if not all hex editors define their own template file format; there is no trend to support a standard or even compatibility between the various formats out in the wild.
166:
by system or application program problems where it may not be worthwhile to write a special program to make the corrections. They are useful to bypass application edit checks which may prevent correction of erroneous data. They have been used to "patch" executable programs to change or add a few
222:
are common because these digits allow one to see which bits in a byte are set. Today, decimal instead of hexadecimal representation is becoming a popular second option due to the more familiar number base and additional helper tools, such as template systems and data inspectors, that reduce the
271:
Advanced hex editors have scripting systems that let the user create macro like functionality as a sequence of user interface commands for automating common tasks. This can be used for providing scripts that automatically patch files (e.g., game cheating, modding, or product fixes provided by
208:
Since the invention of computers and their different uses, a variety of file formats has been created. In some special circumstances it was convenient to be able to access the data as a series of raw digits. A program called SUPERZAP (AMASPZAP) was available for IBM
190:
characters which correspond to each pair of hex values (each byte). Non-printable ASCII characters (e.g., Bell) and characters that would take more than one character space (e.g., tab) are typically represented by a dot (".") in the following ASCII field.
199:
Unlike conventional text editors, Hex editors are able to efficiently handle files with indefinite sizes, as only a portion of the file is loaded while browsing it and modified when saving it, rather than the entire file at once.
109:', a standard numerical format for representing binary data. A typical computer file occupies multiple areas on the storage medium, whose contents are combined to form the file. Hex editors that are designed to 217:
digits (each pair can represent a byte) are the current standard, because the vast majority of machines and file formats in use today handle data in units or groups of 8-bit bytes. Hexadecimal and also
275:
Scripting languages vary widely, often being product specific languages resembling MS-DOS batch files, to systems that support fully-fledged scripting languages such as
151:
With a hex editor, a user can see or edit the raw and exact contents of a file, as opposed to the interpretation of the same content that other, higher level
295:
system that allows to extend the GUI and add new functionality, usually loading dynamic link libraries written in a C-compatible language.
46: 398: 68: 159:. For example, this could be raw image data, in contrast to the way image editing software would interpret and show the same file. 403: 280: 39: 33: 276: 304: 255:
to be changed is stored. Also, raw hex editing may require conversion from hexadecimal to decimal, catering for
50: 171:
systems are sometimes distributed as patches rather than distributing a complete copy of the affected program.
231: 388: 210: 213:
systems which could edit raw disk records and also understood the format of executable files. Pairs of
393: 152: 292: 94: 163: 382: 239:
Some hex editors offer a template system that can present the sequence of bytes of a
168: 102: 248: 243:
in a structured way, covering part or all of the desired file format. Usually the
143: 319: 309: 240: 214: 179: 156: 131: 118: 114: 106: 98: 256: 122: 247:
for a template is a separate tool window next to the main hex editor. Some
314: 365: 167:
instructions as an alternative to recompilation. Program fixes for
147:
Screenshot of a common hex editor (hexedit by Pascal Rigaux (Pixel))
324: 230: 219: 187: 186:(or two groups of 8 bytes), followed by one group of 16 printable 142: 110: 183: 175: 244: 18: 344: 272:
community) or to write more complex/intelligent templates.
235:An example of a simple template-based hex editor. 97:that allows for manipulation of the fundamental 259:, or other data type conversion peculiarities. 223:benefits of the hexadecimal numerical format. 251:systems consist only of such a template GUI. 8: 69:Learn how and when to remove this message 32:This article includes a list of general 336: 178:of the computer file is represented as 16:Computer program for byte manipulation 174:In most hex editor applications, the 7: 162:Hex editors may be used to correct 117:data from the physical segments of 38:it lacks sufficient corresponding 14: 182:values grouped in 4 groups of 4 23: 364:The Linux Information Project. 1: 105:. The name 'hex' comes from ' 291:A few select editors have a 422: 399:Hexadecimal numeral system 305:Comparison of hex editors 101:data that constitutes a 366:"Hex Editor Definition" 155:may associate with the 53:more precise citations. 404:Utility software types 236: 148: 234: 146: 125:are sometimes called 153:application software 237: 149: 87:binary file editor 267:Scripting systems 79: 78: 71: 411: 375: 373: 372: 356: 355: 353: 351: 341: 227:Template systems 95:computer program 74: 67: 63: 60: 54: 49:this article by 40:inline citations 27: 26: 19: 421: 420: 414: 413: 412: 410: 409: 408: 379: 378: 370: 368: 363: 360: 359: 349: 347: 343: 342: 338: 333: 301: 289: 269: 229: 206: 141: 75: 64: 58: 55: 45:Please help to 44: 28: 24: 17: 12: 11: 5: 419: 418: 415: 407: 406: 401: 396: 391: 381: 380: 377: 376: 358: 357: 335: 334: 332: 329: 328: 327: 322: 317: 312: 307: 300: 297: 288: 287:Plugin systems 285: 268: 265: 228: 225: 205: 202: 197: 196: 164:data corrupted 140: 137: 127:sector editors 77: 76: 31: 29: 22: 15: 13: 10: 9: 6: 4: 3: 2: 417: 416: 405: 402: 400: 397: 395: 392: 390: 389:Computer data 387: 386: 384: 367: 362: 361: 346: 340: 337: 330: 326: 323: 321: 318: 316: 313: 311: 308: 306: 303: 302: 298: 296: 294: 286: 284: 282: 278: 273: 266: 264: 260: 258: 252: 250: 246: 242: 233: 226: 224: 221: 216: 212: 204:Early history 203: 201: 194: 193: 192: 189: 185: 181: 177: 172: 170: 169:IBM mainframe 165: 160: 158: 154: 145: 138: 136: 134: 133: 128: 124: 120: 116: 112: 108: 104: 103:computer file 100: 96: 92: 88: 84: 73: 70: 62: 52: 48: 42: 41: 35: 30: 21: 20: 369:. Retrieved 348:. Retrieved 339: 290: 274: 270: 261: 253: 249:cheat engine 238: 207: 198: 173: 161: 150: 132:disk editors 130: 126: 90: 86: 82: 80: 65: 56: 37: 394:Hex editors 320:Hexadecimal 310:Disk editor 241:binary file 215:hexadecimal 195:Size limits 180:hexadecimal 157:file format 107:hexadecimal 91:byte editor 51:introducing 383:Categories 371:2010-05-30 345:"SuperZap" 331:References 257:byte order 123:hard disks 83:hex editor 59:March 2011 34:references 113:and edit 315:Hex dump 299:See also 139:Details 93:) is a 47:improve 350:Jun 7, 293:plugin 281:Python 211:OS/360 119:floppy 115:sector 99:binary 36:, but 325:Octal 220:octal 188:ASCII 184:bytes 111:parse 352:2015 176:data 85:(or 279:or 277:Lua 245:GUI 129:or 121:or 89:or 385:: 283:. 135:. 81:A 374:. 354:. 72:) 66:( 61:) 57:( 43:.

Index

references
inline citations
improve
introducing
Learn how and when to remove this message
computer program
binary
computer file
hexadecimal
parse
sector
floppy
hard disks
disk editors

application software
file format
data corrupted
IBM mainframe
data
hexadecimal
bytes
ASCII
OS/360
hexadecimal
octal

binary file
GUI
cheat engine

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.