LINEスタンプ制作代行サービス・LINEスタンプの作り方!

お電話でのお問い合わせ:03-6869-8600

stampfactory大百科事典

IBM 1401

IBM 1401は、IBMが1959年10月5日に発表した可変ワード長十進コンピュータであり、大成功となった IBM 1400 シリーズの最初の機種であり、パンチカードに格納したデータを処理する電気機械式のタビュレーティングマシンの代替となることを意図していた。1万台以上が生産され、アメリカで新機種に取って代わられた後も後進国にリースまたは再販された。1971年2月8日に販売終了となった。発表には次のような文言がある。全てトランジスタ化された IBM 1401 データ処理システムは、従来パンチカード機器しか使えなかった中小企業でも手の届く価格で電子式データ処理システムの機能を提供する。高速カードパンチおよび読み取り、磁気テープ入出力、高速印刷、内蔵式プログラム、算術および論理演算能力といった機能がある。1401は独立したシステムとしても、IBMパンチカード機器と連携した形でも、IBM 700 または 7000 シリーズのシステムの補助装置としても運用できる。1401の月額レンタル料は2,500ドルからとなっていた。IBMは発表後5週間で5,200の注文を受けており、その勢いはあらゆる予測を超えていた。1961年末までにアメリカ国内で2000システムが納入されたが、これは全製造業者が出荷した全電子式プログラム内蔵コンピュータの4分の1にほぼ相当する。1960年代中ごろのピーク時、1万台を越える1401システムが設置されていた。実際、1960年代中ごろの世界の全てのコンピュータシステムのほぼ半数が1401型のシステムだった。このシステムは1971年2月まで販売された。主に中小企業で使われた IBM 1401 は、メインフレームのオフライン周辺制御装置としても多く使用された。この形態のシステムでは大型機(IBM 7090 など)は入出力を全て磁気テープで行い、1401 は他の形式の入力データ(パンチカードなど)を磁気テープに変換したり、出力テープの内容を他の周辺機器(1402カードパンチャーや1403ラインプリンタなど)に出力するのに使われた。ジョン・ハーンストラ率いる1401部門は市場の要望に応じて 1401 を大規模化するサポート(たとえば IBM 1410)は継続していたが、1964年に全てのリソースをSystem/360に集約するという決定がなされ、1400シリーズはやや唐突に終わることになった。360が1401と非互換であったため、1400シリーズ互換の Honeywell 200シリーズとの競合が生じたため、IBMはマイクロコードをROMの形式で360の一部モデルに搭載し、1401の命令をエミュレートできるようにした。カリフォルニア州マウンテンビューのコンピュータ歴史博物館にて2台の1401システムが動作可能な状態に復元され、当時(あるいは現在のデータセンター)のような「上げ底」の床で配線を隠した状態で展示されている。1401では各英数字を6ビットで表現し、各ビットを "B, A, 8, 4, 2, 1" と呼ぶ。"B,A" ビットは「ゾーン」ビット、"8,4,2,1" のビット群は「数字」ビットと呼ぶ。これらの呼称はIBMの80欄パンチカードから採られている。IBMは1401の文字コードをBCDと称していたが、実際のところこの用語は十進の数字の符号化しか説明していない。1401の英数字の照合順序はパンチカードの称号順序と互換となっている。記憶装置上では、この6ビットにさらに2ビットが付属し、"C" ビットは 「odd パリティチェック」であり、"M" ビットは「ワードマーク」ビットである。メモリ上、これらビットは以下のようなフォーマットで配置される:"C B A 8 4 2 1 M"1401のメモリ構成は 1.4K、2K、4K、8K、16K の5種類あった(ごく一部の1401は特注で32Kまで拡張された)。メモリは文字単位でアドレス指定可能であり、アドレス範囲は0から15999までだった。一部命令は特定のメモリ位置を使用するが、それらの位置は予約されているわけではなく、他の用途にも使用可能である。"Read a card" 命令は80欄ぶんのデータをパンチカードから読み取り、メモリ位置 001-080 に格納する。インデックスレジスタはメモリ上に3本あり、それぞれ 087-089、092-094、097-099 の位置である。"Punch a card" 命令は 101-180 の位置の内容をパンチカードにパンチする。"Write a line" 命令は 201-332 の位置の内容をプリンターに出力する。1401の命令フォーマットは次の通りである。命令コード (Opcode) は1文字である。メモリアドレス("I" は分岐先アドレス、"A" と "B" はデータのアドレス)と装置アドレスは3文字で表される。命令コードの修飾子 (modifier) は1文字である。以上から命令の長さは、1文字、2文字、4文字、5文字、7文字、8文字がある。多くの命令は後続文字(通常、次の命令の命令コード)にワードマークを必要とする。命令一覧は、文字コードと命令コードの節を参照。命令で使用するメモリアドレスは3文字だが、これは5文字で表されるメモリアドレスを符号化したものである。5文字アドレスの下3桁 000 から 999 までは3文字の数字ビット列を使って指定する。最上位の桁を表す文字のゾーンビットがその3桁への加算値を表しており、"A" なら 1000、"B" なら 2000、"B,A" なら 3000 を加算するので、0から3,999番地までを表現できる。さらに最下位の桁を表す文字のゾーンビットで、"A" なら 4000、"B" なら 8000、"B,A" なら 12000 を加算するので、最大16,000文字までのメモリ位置を指定できる。例えば3文字アドレス "I99" は 3000 + 999 であり、3,999番地を指している。アドレスの真ん中の文字のゾーンビットはオプション機能のインデックスレジスタを指定するのに使用される。A-address と B-address が指しているオペランドは、1文字、可変長フィールド、可変長レコードの場合がある。可変長フィールドを指す場合はアドレスの大きい端(数値の場合は最下位の桁)を指し、終端は最後の文字(最上位の桁)にワードマークをセットすることで示す。可変長フィールドの長さには制限がなく、メモリの許す限り長いフィールドを使用可能である。可変長フィールドを扱える命令としては、四則演算("Add"、"Subtract"、"Multiply"、"Divide")と比較命令 ("Compare") と文字列転送(変換)命令("Move Characters to A or B Word Mark"、"Move Characters and Edit")がある。1つ以上の可変長フィールドで可変長レコードを構成できる。可変長レコードを指す場合はアドレスの大きい端を指し、フィールドはワードマーク付きの Group Mark 文字で区切り、レコード終端(アドレスの一番小さい位置)に Record Mark 文字を置く。"Move Characters to Record or Group Mark" という命令でレコードをまとめたブロックを作ることができる。アドレスレジスタには命令実行でアクセスしたオペランドのアドレスが残るので、連続するオペランドを使って処理をする場合、アドレスを省略して連鎖させることができる。例えば、連続するデータフィールド群の加算を行うコードが "A 700,850

出典:wikipedia

LINEスタンプ制作に興味がある場合は、
下記よりスタンプファクトリーのホームページをご覧ください。