質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.31%
C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

Q&A

3回答

2555閲覧

バイナリエディタの16進数の行

ryo00

総合スコア17

C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

0グッド

0クリップ

投稿2017/07/03 16:27

*この質問のタグがおかしいと思います。本当はバイナリ、16進数というタグをつけたかったのでが、タグがなかったため、このようなタグになりました。
バイナリエディタでファイルを開くと16進数で表示されると思うんですが、エディタによて変わって来ると思うんですが、16進数が表のように表示されると思うんですが、表示された時行数が表示されると思います。
その表示のしかたなんですが、
|列1|0|1|2|3|4|5|6|7|8|9|A|B|C|D|E|F|
|:--|:--:|--:|
000010|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-
000020|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-
000030|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-

000090|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|- 0000A0|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|- 0000B0|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|- ~~~~~|~|~|~|~|~|~|~|~|~|~|~|~|~|~|~|~ 0000F0|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|- 000100|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|- 000110|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|- となると思うんですが、一の位の`0`はなぜ付いているのですか? なくていいとおもうのでが・・・

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

こんにちは。

表示された時行数が表示されると思います。

これは行数ではなく、ファイル先頭からのオフセットのバイト数を16進数で示したものです。
そのため、1の位に0が付きます。

投稿2017/07/03 16:29

Chironian

総合スコア23274

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

バイナリエディタでファイルを開くと16進数で表示されると思うんですが

8進数のもあるんやで・・・

一の位の0は

例えば

plain

1 Address | 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F | 123456789ABCDEF 2---------+-------------------------------------------------+---------------- 300000000 | 38 FE CE 9C 53 7F 00 00 01 00 00 00 00 00 00 00 | 8�ΜS.......... 400000010 | 60 FE CE 9C 53 7F 00 00 C8 FA CE 9C 53 7F 00 00 | `�ΜS...��ΜS... 500000020 | 20 9C 79 00 00 00 00 00 21 9C 79 00 00 00 00 00 | �y.....!�y..... 600000030 | 21 9C 79 00 00 00 00 00 20 9C 79 00 00 00 00 00 | !�y..... �y..... 700000040 | 29 9C 79 00 00 00 00 00 20 9E 79 00 00 00 00 00 | )�y..... �y..... 800000050 | 60 66 CF 9C 53 7F 00 00 18 00 00 00 00 00 00 00 | `fϜS.......... 900000060 | 20 9C 79 00 00 00 00 00 01 00 00 00 00 00 00 00 | �y............ 1000000070 | 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ............... 1100000080 | 88 FE CE 9C 53 7F 00 00 06 00 00 00 00 00 00 00 | ��ΜS.......... 1200000090 | 00 00 00 00 00 00 00 00 02 10 00 00 00 00 00 00 | .............. 13000000A0 | 00 00 00 00 53 7F 00 00 00 00 00 00 00 00 00 00 | ....S........... 14000000B0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................ 15000000C0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................ 16000000D0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................ 17000000E0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................ 18000000F0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................ 1900000100 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................ 2000000110 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................ 2100000120 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................ 2200000130 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................ 2300000140 | 08 00 00 00 00 00 00 00 C0 AD 2D 0F FD 7F 00 00 | .......��-�... 2400000150 | 60 66 CF 9C 53 7F 00 00 00 00 00 00 00 00 00 00 | `fϜS........... 2500000160 | 00 00 2D 0F FD 7F 00 00 18 AD 2D 0F FD 7F 00 00 | ..-�...�-�... 2600000170 | 80 60 CF 9C 53 7F 00 00 10 60 CF 9C 53 7F 00 00 | �`ϜS...`ϜS... 2700000180 | 20 60 CF 9C 53 7F 00 00 | `ϜS...

こんなhexdumpがあるとき、0x0000014C番地はFDだな、みたいな言い方をします。Chironianさんが書いているファイル先頭からのオフセットのバイト数のイメージの助けになれば。

*余談:上記のhexdumpは適当に前に書いたhesdumpするコードstd::stringstreamをdumpするコードをwandboxで実行してみた結果です
https://wandbox.org/permlink/865ob0kUEL5ojw36

投稿2017/07/03 17:30

yumetodo

総合スコア5852

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

1行16バイト分を表示していて、且つ16進数でのアドレス表記だからです。
各行列1に記載のアドレスから開始し、1バイトずつ表示します。

000010|000011|000012|~|00001F|

なので、00001Fの次は000020ですよね。

10進数や8進数表記のバイナリエディタがあるかわかりませんが、例えあったとしても各行に表示されるアドレスの1桁目の0は変わりません。

10進数の場合、各行10バイト分表示
000010|000011|000012|~|000019|
000020|…

8進数の場合、各行8バイト分表示
000010|000011|000012|~|000017|
000020|…

※必要なタグがなければ申請しましょう。

投稿2017/07/03 23:45

ttyp03

総合スコア17000

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ryo00

2017/07/04 08:08

タグは申請したんですが、すぐに反映されないので、あとで直します。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.31%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問