16진 에디터
Hex editor![]() |
16진수 편집기(또는 이진 파일 편집기 또는 바이트 편집기)는 컴퓨터 파일을 구성하는 기본 이진 데이터를 조작할 수 있는 컴퓨터 프로그램입니다.'hex'라는 이름은 이진 데이터를 나타내기 위한 표준 숫자 형식인 '16진수'에서 유래했습니다.일반적인 컴퓨터 파일은 저장 매체에서 여러 영역을 차지하며, 그 내용이 결합되어 파일을 형성합니다.플로피 또는 하드 디스크의 물리적 세그먼트에서 섹터 데이터를 구문 분석 및 편집하도록 설계된 16진수 편집기를 섹터 편집기 또는 디스크 편집기라고 부르기도 합니다.
세부 사항
16진수 에디터를 사용하면 사용자는 파일의 원시 및 정확한 내용을 보거나 편집할 수 있습니다.이는 다른 상위 레벨의 애플리케이션 소프트웨어가 파일 형식과 관련지을 수 있는 동일한 내용을 해석하는 것이 아닙니다.예를 들어, 이미지 편집 소프트웨어가 동일한 파일을 해석하고 표시하는 방식과는 대조적으로 원시 이미지 데이터일 수 있습니다.
16진수 편집기를 사용하여 시스템 또는 응용 프로그램 문제로 인해 손상된 데이터를 수정할 수 있습니다. 이 경우 수정하기 위해 특수 프로그램을 작성할 필요가 없습니다.잘못된 데이터의 수정을 방지할 수 있는 응용 프로그램 편집 검사를 생략하는 데 유용합니다.재컴파일 대신 실행 가능한 프로그램을 "패치"하여 몇 가지 명령을 변경하거나 추가하는 데 사용되었습니다.IBM 메인프레임 시스템에 대한 프로그램 수정은 영향을 받는 프로그램의 전체 사본을 배포하는 대신 패치로 배포되는 경우가 있습니다.
대부분의 16진수 에디터 어플리케이션에서는 컴퓨터 파일의 데이터는 4바이트의 4그룹(또는 8바이트의 2그룹)으로 그룹화된 16진수 값으로 표현되며, 그 후 16진수 값의 각 쌍에 대응하는 인쇄 가능한 ASCII 문자의 1그룹으로 표현됩니다.인쇄할 수 없는 ASCII 문자(예: 벨) 및 여러 문자 공간을 사용하는 문자(예: 탭)는 일반적으로 다음 ASCII 필드에 점("")으로 표시됩니다.
- 크기 제한
Hex 에디터는 기존 텍스트 에디터와 달리 파일 전체를 한 번에 처리하는 것이 아니라 파일의 일부만 검색하면서 로드하고 저장할 때 수정하기 때문에 크기가 일정하지 않은 파일을 효율적으로 처리할 수 있습니다.
초기 역사
컴퓨터와 컴퓨터의 다른 용도가 발명된 이후, 다양한 파일 형식이 생성되었습니다.일부 특수한 상황에서는 일련의 원시 자릿수로 데이터에 액세스할 수 있는 것이 편리했습니다.SUPERZAP(AMASPZAP)라는 프로그램은 원시 디스크 레코드를 편집할 수 있고 실행 [1]파일의 형식을 이해할 수 있는 IBM OS/360 시스템에서 사용할 수 있었습니다.현재 사용되는 대부분의 머신과 파일 포맷은 8비트바이트 단위 또는 그룹으로 데이터를 처리하기 때문에 16진수 쌍(각 쌍은 바이트를 나타낼 수 있음)이 현재 표준입니다.16진수 및 8진수는 바이트 내의 어떤 비트가 설정되어 있는지 확인할 수 있기 때문에 일반적입니다.현재 16진수 표현 대신 10진수 표현은 숫자 기반과 16진수 [citation needed]형식의 이점을 줄이는 템플릿 시스템이나 데이터 검사기 등의 추가 도우미 도구에 의해 널리 사용되고 있습니다.
템플릿 시스템
일부 16진수 편집기는 원하는 파일 형식의 일부 또는 전부를 포함하는 구조화된 방식으로 이진 파일의 바이트 순서를 표시할 수 있는 템플릿 시스템을 제공합니다.보통 템플릿의 GUI는 메인 16진 에디터 옆에 있는 별도의 도구창입니다일부 치트 엔진시스템은 이러한 템플릿 GUI로만 구성됩니다.
일반적으로 템플릿은 레이블이 지정된 텍스트 상자의 목록으로 표시되므로 파일의 개별 값을 적절한 형식(예: 문자열, 색상 또는 십진수)으로 쉽게 편집할 수 있습니다.템플릿을 지원하지 않으면 변경할 값이 저장되는 파일에서 올바른 오프셋을 찾아야 합니다.또한 16진수 미가공 편집에서는 바이트 순서 또는 기타 데이터 유형 변환 특성에 맞게 16진수에서 10진수로 변환해야 할 수 있습니다.
템플릿은 파일로 저장될 수 있으며 사용자가 교환할 수 있으며 제조업체의 웹 사이트를 통해 공개적으로 공유됩니다.모든 16진수 에디터가 독자적인 템플릿 파일 형식을 정의하고 있습니다.다양한 포맷 간에 표준 또는 호환성을 지원하는 경향은 없습니다.
스크립트 시스템
고급 16진 에디터에는 사용자가 공통 작업을 자동화하기 위한 일련의 사용자 인터페이스 명령으로 매크로와 같은 기능을 만들 수 있는 스크립트 시스템이 있습니다.이는 자동으로 파일을 패치하는 스크립트(게임 부정행위, 변경, 커뮤니티에서 제공하는 제품 수정 등)를 제공하거나 보다 복잡하고 인텔리전트한 템플릿을 작성할 때 사용할 수 있습니다.
스크립트 언어는 MS-DOS 배치 파일과 유사한 제품 고유의 언어이며 Lua 또는 Python과 같은 완전한 스크립트 언어를 지원하는 시스템에 이르기까지 매우 다양합니다.
플러그인 시스템
일부 에디터에는 GUI를 확장하고 새로운 기능을 추가할 수 있는 플러그인 시스템이 있으며, 일반적으로 C 호환 언어로 작성된 동적 링크 라이브러리를 로드합니다.
「 」를 참조해 주세요.
레퍼런스
- ^ "SuperZap". Retrieved Jun 7, 2015.
- The Linux Information Project. "Hex Editor Definition". Retrieved 2010-05-30.