비정상적인 파일을 다룰 때 파일을 구성하는 실제 비트를 보는 것은 매우 중요할 수 있습니다. 다른 것이 없다면 파일의 헤더를 읽고 목적을 해독할 수 있습니다. 16진수 코드 편집은 복잡한 작업이지만 macOS의 다양한 16진수 편집기를 사용하여 수행할 수 있습니다. 16진수 코드란 무엇이며 검토할 가치가 있는 이유는 무엇입니까?
16진수 코드란 무엇입니까?
컴퓨팅에서 16진수는 이진 값을 나타내는 보다 간결한 방법을 제공합니다. 2진법 대신 16진법 숫자 체계를 사용합니다. 더 큰 숫자 공간 덕분에 여러 이진 자릿수를 단일 16진수로 표현할 수 있습니다. 각 16진수는 4개의 2진수를 나타냅니다. 바이너리를 기억한다면 반 바이트에는 정확히 16개의 가능한 값이 있다는 것을 알게 될 것입니다. 아래 표를 검토하여 동등성을 확인하십시오.
두 개의 16진수를 결합하면 8비트의 정보를 표현할 수 있습니다. 이는 32개의 가능한 값이 있는 1바이트와 같습니다. 단일 바이트의 범위는 0000 0000에서 1111 1111입니다. 16진법에서는 각각 00에서 FF입니다. 16진수 값을 일련의 쌍으로 작성하면 파일의 이진 데이터를 바이트로 쉽게 "청크"할 수 있습니다.
기본적으로 16진수와 2진수는 동일한 기본 데이터에 대해 서로 다른 "프레임"을 제공합니다. 인간은 16진수를 쉽게 읽을 수 있지만 컴퓨터는 2진수를 쉽게 읽을 수 있습니다.
16진수 값 읽기 및 쓰기 규칙
16진수 값을 작성할 때 0x 문자가 값을 시작할 수 있습니다. 이러한 문자는 다음 값에 16진수로 레이블을 지정합니다. 16진법, 2진법 및 8진법은 모두 언뜻 보기에 동일하게 보일 수 있으므로 이 예약된 접두사는 혼동을 피하고 오류를 줄입니다.
예:0x2FF0C4
0010 1111 1111 0000 1100 0100
의 이진 값에 해당하는 메모리의 16진법 주소를 설명합니다. 10진수 값 3,141,828
. 2FF0C4
만 값의 일부로 계산됩니다. 선행 0x
문자는 숫자 체계만을 나타냅니다.
전체 문서가 16진수로 처리될 때 값은 FF A0 2D CE
와 같이 쌍으로 표시됩니다. . 이렇게 하면 값을 바이트 길이 문자열로 구분하여 사람이 더 쉽게 구문 분석할 수 있습니다.
macOS에서 16진수 코드 보기 및 편집
macOS에서 16진수 코드를 보려면 16진수 뷰어 응용 프로그램이 필요합니다. 몇 가지 무료 옵션을 사용할 수 있습니다.
- 0xED는 몇 가지 사용자 지정 옵션을 제공하는 간단한 무료 인코더입니다. 응용 프로그램은 16진수 값의 명확하고 빠른 해석에 중점을 둡니다. 16진법 편집기에 대한 기초적이지만 유용한 소개입니다.
- 그것을 분석하라! 비주얼 파일 분석을 위한 값의 색상 코딩이 내장된 전문가 수준의 유료 16진 인터프리터입니다. 그것은 또한 "문법"의 거대한 저장소를 포함합니다. 이들은 알려진 파일 구조를 16진수 코드에 적용합니다. 이 프레임은 검색을 이해하고 16진수 코드를 편집하는 데 도움이 됩니다.
둘 중 하나의 응용 프로그램이 있으면 모든 파일을 열어 16진수 값으로 표시된 기본 이진 코드를 볼 수 있습니다. 이것은 다른 파일보다 특정 유형의 파일에 더 유용하지만 대부분의 경우 왼쪽에는 16진수 값이 표시되고 오른쪽에는 해당 값의 ASCII 해석이 표시됩니다. 이렇게 하면 파일을 "읽고" 무슨 일이 일어나고 있는지 이해할 수 있습니다.
16진법 편집기는 16진법 코드도 편집할 수 있습니다. 그러나 텍스트를 편집하는 것만큼 간단하지도 않고 관대하지도 않습니다. 16진수 편집기는 바이트 길이 쌍으로 코드를 편집하여 두 값을 동시에 덮어쓰고 교체합니다. 각별히 주의하지 않으면 기능 파일이 즉시 손상될 수 있습니다. 이러한 취약성으로부터 보호하려면 16진수 코드를 편집하기 전에 항상 파일을 복제하십시오.
결론:16진수 편집기는 무엇에 사용됩니까?
16진법 편집기에서 임의의 파일을 여는 것만으로도 재미있을 수 있습니다. 그러나 별로 유용하지 않습니다. 16진법 편집기가 자신의 품질을 보여주는 좁은 범위의 상황이 있습니다. 바이너리 코드를 보고 편집해야 하는 경우 16진수 편집기가 작업에 가장 적합한 도구입니다.
예를 들어 바이너리 데이터를 출력하는 프로그램을 작성할 때 파일의 품질을 수동으로 검사해야 합니다. 또한 손상된 타사 파일을 복구하거나 분석하는 데 도움이 될 수 있습니다. 16진 편집기는 손상되었거나 유효하지 않은 모든 파일을 열 수 있습니다. 이것은 때때로 16진법 편집기로 손상된 파일을 "수정"하거나 적어도 오류의 원인을 파악할 수 있음을 의미합니다. kext에서 메모리 주소를 변경하는 것과 같이 시스템 파일을 정확하게 편집해야 하는 경우 16진수 편집기가 작업을 위한 유일한 도구입니다. 광범위한 유틸리티 덕분에 컴퓨팅 및 프로그래밍의 핵심에 관심이 있는 사람은 16진수 편집기에 익숙해지는 것이 좋습니다.