2013年9月1日日曜日

10進数で扱われる情報


パック10進数とゾーン10進数がある。
データ表現は機種依存となることが多い。









10進数の各けたの値をBCDコード(2進化10進符号)で表現する。




 

① パック10進数:1バイトに2けた(記憶効率良い,演算速い) 
10進数の1桁を4桁の数値ビットで表現し最後に4ビットの符号ビットをつける。
符号ビットは多くの場合、正の数に12、負の数に13を追加する( 機種に依存)

+234を表現した場合を例に、パック10進数の構造を示す。

0010001101001100
数値ビット数値ビット数値ビット符号ビット

イメージとしては234+と表現するように覚える。
符号部分が機種依存になる。

桁数により先頭に0000を追加する(+は12、ーは13とする)

+1234だと 0000 0001 0010 0011 0100 1100
ー1234だと 0000 0001 0010 0011 0100 1110

偶数桁の場合、符号ビットを追加すると奇数となるため
先頭に0000を追加する。 


② ゾーン10進数:1バイトに1けた(表示・印字効率良い,計算はパックに変換の必要あり)
アンパック10進数とも呼ばれる。
10進数の1桁を、4桁のゾーンビットと4桁の数値ビットとに分けて表現する。最後のゾーンビットは符号ビットになる。
パック10進数はゾーン10進数のゾーンビットに数字を入れられるようにした物とイメージする 

ゾーンビットはデータが数値であることを表すコードである。

+123をEBCDICで表現した場合を例に、アンパック10進数の構造を示す。

111100011111001011000011
ゾーンビット数値ビットゾーンビット数値ビット符号ビット数値ビット

数値とビット変換の法則が機種依存ベンダ依存が強い


0 件のコメント:

コメントを投稿