2011-09-09 10 views
0

チューリングマシンでは、入力と出力の両方に、またスタックに(異なる)テープが使用されています。チューリングマシンを使用して2つの数字を追加する問題では、入力は1,0、B(空白)、+などの多くの記号を扱っています。入力文字列はどのように磁気テープに表示されますか?

(私は、彼らがチューリングマシンとその入力について知っmayn't考え以来タフこの質問は物理学に関連しているが、私はここで尋ねた。)入力がBBBBB1111 + 111111BBある場合

そして、私の疑問は、 あり、 次に磁気テープでは、北極(例えば)で表される>

1->である。
0->南極(例えば)で表されます。
B->極性なし。

次に、 「+」はどのように表されますか? 特別な記号のためのいくつかのコード(ASCIIのようなもの)があるとは思わない。 特殊記号の数と種類は実装に依存するためです。また、特別なコードはアルゴリズムをより面倒にするでしょう。

または

はテープでの入力記号で表現したものです上記の方法とは全く違うのですか?YESの場合、説明してください。

+0

[マンチェスターエンコード](http://en.wikipedia.org/wiki/Manchester_code) –

+2

より良い質問は、実際に無限の製造の背後にある物理学についてのだろうあなたがそれをやった後にあなたがその上のデータをどのように表現するかではなく、最初の場所に長いテープを置いてください。 – geoffspear

+0

私は磁気テープが大麻、ピンクダスト、長いひげなどで働いていると思っていました...いいえ? –

答えて

2

おそらく、各文字を複数のビットでエンコードすることでこれを行うことになります。例:

B: 00 
0: 01 
1: 10 
+: 11 

読み取りヘッドのサイズは2で、移動するときは常に2つのステップを左右に移動します。

あなたは(少なくとも)上に読みたいかもしれません
+0

startsymbol、stacksymbols(プッシュダウンオートマトン)のようなシンボルはありません。エンコードするビット数が増えれば、それは確かに退屈なフォーマットにつながります。そうではありませんか?そして、本書では、私の知る限りでは、これについて一行も話しません。 –

+2

n個のシンボルがある場合は、1シンボルにつきlgビットが必要です。これらのオートマトンは理論的な関心事であり実用的な関心事ではないことを覚えておいてください。現実世界でどのように働くかの背後にある実際のメカニズムはまったく重要ではありません。 exMpleとして、非決定的なPDAやTMについて考えてみましょう。現実世界でこれをどのように構築するかはわかりませんが、理論的には非常に重要です。 – templatetypedef

0
Symbol: Representation 
0:1 ; 1:11 ; 2:111 ; n:n+1 ; Blank:B 
+0

[この記事は新しいStackOverflowユーザーからの「遅刻回答」としてフラグが立てられているためコメントしています。]この質問にどのように答えているかは不明ですが、質問自体もかなり曖昧です。 – danfuzz

関連する問題