掲示板に戻る
No:658 タイトル:GEAR戦士撫子 新Part653 お名前:プロフェッサー圧縮 投稿日:2025/06/04 08:12:39 単表示 返信

ひとまず漢字を2バイトで考えますと、yyyy年mm月dd日のメモリー上の位置は以下のようになります。

012345678910111213
yyyy年mm月d d 日

日のところが隙間空いてますが表記上の都合です。

実際の表示は2000年10月11日のようになります。


          ◇          ◇          ◇


また、先頭位置が0となっているのはそういうものだからです。

1バイトが取りうる値は0~255の256通りで、0も当然含まれます。

と言いますか先にも述べましたが、当時のコンピューターのメモリーは希少でしたので、わざわざ0を除外する理由も余裕もありゃしなかったのです。


          ◇          ◇          ◇


閑話休題。

日付の月(mm)の位置は、文字単位で数えると6文字目であり、バイト単位で数えると7バイト目です。

メモリーアドレスでいうと位置6となります。

文字単位で数えた位置とメモリーアドレスは同じ6ですが、これは先程言ったようにアドレスの数え方が0から始まっているからです。

実際に数える時はバイト単位ですので、1バイト分ズレていることになります。


          ◇          ◇          ◇


さて。

ここで思い出してほしいのですが、現代に至るコンピューターの基礎理論はチューリングマシンを祖とします。

そしてチューリングマシンとは1本のテープの上を行ったり来たりするものです。

つまり。

mmの位置を特定するには、頭から順に見ていくしかないと言うことなのです。