Introduzzjoni
Id-dump hex huwa vista hexadeċimali tad-data. Inti tista 'tixtieq tuża hexadecimal meta tiddisweb programm jew biex ireġġa' lura inġinier ta 'programm.
Pereżempju, bosta formati ta 'fajls għandhom karattri speċifiċi ta' hex biex jindikaw it-tip tagħhom. Jekk qed tipprova taqra fajl bl-użu ta 'programm u għal xi raġuni ma tkunx qed titgħabba b'mod korrett, jista' jkun li l-fajl ma jkunx fil-format li qed tistenna.
Jekk trid tara kif taħdem il-programm u m'għandekx il-kodiċi tas-sors jew biċċa ta 'softwer li tħaddem il-kodiċi, tista' tħares lejn il-ħanqid hex biex tipprova taħdem dak li qed jiġri.
X'inhu Hexadecimal?
Kompjuters jaħsbu f'binarju . Kull karattru, numru u simbolu huma referenzjati minn valuri binarji jew multipli binarji.
Il-bnedmin, madankollu, għandhom it-tendenza li jaħsbu f'de deċimali.
Eluf | Mijiet | Tens | Unitajiet |
1 | 0 | 1 | 1 |
Bħala bnedmin, in-numri l-aktar baxxi tagħna jissejħu unitajiet u jirrappreżentaw in-numri minn 0 sa 9. Meta niġu għal 10 aħna niddeċiedu mill-ġdid il-kolonna unitajiet lura għal 0 u żid 1 mal-kolonna ta 'l-għexieren (10).
128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
1 | 0 | 0 | 1 | 0 | 0 | 0 | 1 |
Fil-binarju, l-iktar numru baxx jirrappreżenta biss 0 u 1. Meta nikbru l-aħħar 1 npoġġu 1 fil-kolonna 2 u 0 fil-kolonna 1. Meta trid tirrappreżenta 4 inti tpoġġi 1 fil-kolonna 4 u reset il-kolonna 2 u 1.
Għalhekk biex tirrappreżenta 15 inti jkollok 1111 li tirrappreżenta 1 tmienja, 1 erbgħa, 1 tnejn u waħda waħda. (8 + 4 + 2 + 1 = 15).
Jekk rajna fajl tad-data f'format binarju, ikun assolutament enormi u prattikament impossibbli li wieħed jagħmel sens.
Il-pass li jmiss mill-binarju huwa octal, li juża 8 bħala n-numru bażi.
24 | 16 | 8 | 1 |
0 | 1 | 1 | 0 |
F'sistema octal l-ewwel kolonna tmur minn 0 sa 7, it-tieni kolonna hija 8 sa 15, it-tielet kolonna 16 sa 23 u r-raba 'kolonna 24 sa 31 u l-bqija. Filwaqt li ġeneralment aktar faċli biex tinqara minn binarju, ħafna nies jippreferu jużaw hexadeċimali.
L-użi hexadeċimali 16 bħala n-numru bażi. Issa dan huwa fejn toħloq konfużjoni għax bħala bnedmin naħsbu n-numri minn 0 sa 9.
Allura dak li jintuża għal 10, 11, 12, 13, 14, 15? It-tweġiba hija ittri.
- 0 = 0
- 1 = 1
- 2 = 2
- 3 = 3
- 4 = 4
- 5 = 5
- 6 = 6
- 7 = 7
- 8 = 8
- 9 = 9
- 10 = A
- 11 = B
- 12 = C
- 13 = D
- 14 = E
- 15 = F
Il-valur 100 huwa għalhekk rappreżentat minn 64. Int ser ikollok bżonn 6 tal-kolonna 16s li ġġib 96 u mbagħad 4 fil-kolonna unitajiet li jagħmlu 100.
Il-karattri kollha f'fajl se jiġu indikati b'valur ta 'hexadecimal. Dak li jfisser dawn il-valuri jiddependu mill-format tal-fajl innifsu. Il-format tal-fajl huwa indikat mill-valuri hexadeċimali li ġeneralment ikunu maħżuna fil-bidu tal-fajl.
Bl-għarfien tas-sekwenza ta 'valuri hexadeċimali li jidhru fil-bidu tal-fajls, tista' manwalment tfassal liema format huwa l-fajl. Meta tara fajl f'qoxra hex tista 'tgħinek issib karattri moħbija li ma jintwerewx meta l-fajl huwa mgħobbija f'edukatur normali tat-test.
Kif Toħloq Hex Dump Permezz ta 'Linux
Biex toħloq hex dump bl-użu ta 'Linux uża l-kmand tal-hex-dump.
Biex jintwerew fajl bħala hex fit -terminal (produzzjoni standard) imexxu l-kmand li ġej:
isem tal-fajl hexdump
Pereżempju
hexdump image.png
L-output awtomatiku juri n-numru tal-linja (f'format hexadeċimali) u mbagħad 8 settijiet ta '4 valuri hexadeċimali għal kull linja.
Pereżempju:
00000000 5089 474e 0a0d 0a1a 0000 0d00 4849 5244
Tista 'tforni swiċċijiet differenti biex tibdel il-produzzjoni default. Per eżempju, li tispeċifika l-iswiċċ minus b ser jipproduċi offset ta '8 ċifri segwit minn 16 tliet kolonni, żero mimlija, bytes tad-data tal-input f'format octal.
hexdump -b image.png
Għalhekk l-eżempju ta 'hawn fuq issa se jkun irrappreżentat kif ġej:
00000000 211 120 116 107 015 012 032 012 000 000 000 015 111 110 104 122
Il-format t'hawn fuq huwa magħruf bħala wirja ta 'one-byte octal.
Mod ieħor biex tara l-fajl huwa f'wirja ta 'karattri b'byte wieħed bl-użu tal-buttun li jnaqqas in-numru c.
hexdump -c image.png
Dan għal darb'oħra juri t-tpaċija iżda din id-darba segwit minn sittax-il spazju separati, tliet kolonni, karattri mimlija spazjali ta 'dejta ta' input għal kull linja.
Għażliet oħra jinkludu l-iskrin Canonical hex + ascii li jista 'jintwera bl-użu tas-swiċċ C minus u l-wiri deċimali b'żewġ bytes li jista' jintwera bl-użu tal-buttun minus d. L-iswiċċ tan-nieqes jista 'jintuża biex juri wirja b'żewġ byte octal. Finalment il-minux x swiċċ jista 'jintuża biex juri wiri b'hexadecimal b'żewġ bytes.
hexdump -C image.png
hexdump -d image.png
hexdump -o image.png
hexdump -x image.png
Jekk l-ebda wieħed mill-formati ta 'hawn fuq ma jaqbel mal-ħtiġijiet tiegħek biex tuża l-buttuna minus e biex tispeċifika l-format.
Jekk taf li fajl tad-data huwa twil ħafna u inti biss trid tara l-ewwel ftit karattri biex tiddetermina t-tip tagħha tista 'tuża s-swiċċ -n biex tispeċifika kemm tal-fajl li juri f'hex.
hexdump -n100 image.png
Il-kmand ta 'hawn fuq juri l-ewwel mitt byte.
Jekk tixtieq taqbeż porzjon tal-fajl tista 'tuża l-iswiċċ tan-nieqes biex tiffissa l-kumpens biex tibda minnha.
hexdump -s10 image.png
Jekk ma tagħtix isem tal-fajl it-test jinqara mill-input standard.
Sempliċement ikteb il-kmand li ġej:
hexdump
Imbagħad daħħal it-test fl-input standard u finta billi ttajpja tieqaf. L-hex se jintwera għall-output standard.
Sinteżi
L-utilità tal-hexdump hija ovvjament għodda b'saħħitha u inti għandek taqra l-paġna tal-manwal b'mod sħiħ biex tilħaq il-karatteristiċi kollha.
Int tkun teħtieġ ukoll fehim tajjeb ta 'dak li qed tfittex meta taqra l-output.
Biex tara l-paġna tal-manwal imexxu l-kmand li ġej:
bniedem hexdump