Presentation is loading. Please wait.

Presentation is loading. Please wait.

Ibaraki Univ. Dept of Electrical & Electronic Eng.

Similar presentations


Presentation on theme: "Ibaraki Univ. Dept of Electrical & Electronic Eng."— Presentation transcript:

1 Ibaraki Univ. Dept of Electrical & Electronic Eng.
電子計算機工学 Ibaraki Univ. Dept of Electrical & Electronic Eng. Keiichi MIYAJIMA

2 コンピュターにおける数表現

3 2進数 これらを1と0で表す 2進数で表現されている 電圧の高・低 スイッチのオン・オフ 磁化されている・いない etc・・・
コンピュータの内部でのデータは 電圧の高・低 スイッチのオン・オフ 磁化されている・いない   etc・・・ これらを1と0で表す   2進数で表現されている

4 2進数の表記 のところで桁上がりが発生する 10進数 2進数 0 1 2 3 4 5 10 11 100 101 10進数 2進数 6 7
10 ・・・ 110 111 1000 1001 1010 ・・・・   のところで桁上がりが発生する

5 r進数 r進数とは・・・ 10進数の場合 2進数の場合 以後、r進数を区別するため 10進数: 2進数: r: 基数

6 bit ビット(bit):2進数における1桁の情報 MSb (most significant bit)
LSb (least significant bit) (6bit の情報) MSb (most significant bit)

7 16進数 2進数では桁が多くて大変なので 4桁づつひとまとめにして16進数を用いる 10進数 2進数 16進数 0 1 2 3 4 5 6
10 11 100 101 110 111 10進数 2進数 16進数 10 11 12 13 14 15 1000 1001 1010 1011 1100 1101 1110 1111 A B C D E F

8 r進数から10進数へ 2進数から10進数 16進数から10進数

9 10進数からr進数へ 10進数から2進数 0.75 2) 23 ・・・1 × 2 2) 11 ・・・1 1.50 0.5 2) 5 ・・・1
を2進数へ 0.75 × 1.50 下から順に並べる 2) 23 ・・・1 2) 11 ・・・1 2) 5 ・・・1 2) 2 ・・・0 1 0.5 × 2 1.0 順に並べる

10 10進数からr進数へ 10進数から16進数 0.75 16) 23 ・・・7 × 16 1 12.00 を16進数へ 下から順に並べる
× 12.00 下から順に並べる 16) 23 ・・・7 1 順に並べる

11 2進数と16進数の関係 16進数は2進数を4桁づつまとめたもの 4桁ずつ区切る それぞれの区切りごとに16進数に直す

12 数の表現 コンピュータで表現できる数の範囲は、数値を表現するために利用できるビット数で決まる 一度に利用できるビット数:ワード(word)
例) 最近のPCならば32ビットか64ビット

13 数の表現 正の整数: 1ワードが8ビットならば では「負の数」はどうするか?

14 負の数の表現 絶対値表現: 1ワードが8ビット しかし・・・ 最初の1ビットを+,ーの符号として使用 利点:人間にとってわかりやすい
4ビットの加算と減算を考えると 加算) 減算) 欠点:単純な回路構成では計算ができない

15 負の数の表現 (補数表示) 補数: 任意の数Nに対する補数には基数をrとすると、r-1の補数とrの補数が存在する。
例) 10進数なら9の補数と10の補数 2進数なら1の補数と2の補数 一般に基数rの正数  に対するr-1の補数   は ここで、  は  の整数部の桁数、  は小数部の桁数

16 負の数の表現 (補数の例) 例: 例2: 10進数326の9の補数は の9の補数
つまり、326の9の補数とは、整数部3桁で表現できる最大の数999になるために326にいくつ加えればよいかに相当する。 例2: 10進数0.36の9の補数は の9の補数

17 負の数の表現 (補数の例) 例: 2進数101の1の補数は の1の補数
つまり、101の1の補数とは、整数部3桁で表現できる最大の数111になるために101にいくつ加えればよいかに相当する。 しかし、よく見れば1と0を反転させただけ

18 負の数の表現 (rの補数) 一般に基数rの正数  に対するr-1の補数   は ここで、  は  の整数部の桁数、  は小数部の桁数

19 負の数の表現 (rの補数の例) 例: 例: 10進数326の10の補数は の10の補数
つまり、326の10の補数とは、9の補数に1加えたもの 例: 10進数0.36の10の補数は の10の補数

20 負の数の表現 (rの補数の例) なぜ、補数表現なるものを用いるのか? 例: 例: 2進数101の2の補数は の2の補数
つまり、101の2の補数とは、1の補数に1加えたもの 例: 2進数0.101の2の補数は の2の補数 なぜ、補数表現なるものを用いるのか?

21 補数による演算 補数を用いることにより 減算も加算で表現可能 10進数による例: 減数(負の数)762の10の補数は 238
減数(負の数)762の10の補数は 238 桁上げ分を無視すると答えの 22 が出てくる

22 補数による演算 10進数による例: 減数(負の数)813の10の補数は 187
減数(負の数)813の10の補数は 187 桁上げが起こらないならば、負の値なので、971の10の補数を求める

23 補数による演算 (2進数の場合) 条件: 符号を含めて1ワード8ビットとする 加算においてオーバーフローは起こらないものとする 例)
数値が8ビットで表現できる範囲を超えてしまうこと この場合:+127~ー128 例)

24 補数による演算 (2進数の場合) (正の数)+(負の数)の例: 加算
22は負の数なので最初の1ビットを1にして、残りの7ビットで2の補数をつくる 加算 桁上げ分を無視すると答えの 12 が出てくる

25 補数による演算 (2進数の場合) (正の数)+(負の数)の例: 加算
48は負の数なので最初の1ビットを1にして、残りの7ビットで2の補数をつくる 加算 最初の1ビットが1なので負の数、残りの7ビットの2の補数をとると答えの ー14 が出てくる

26 補数による演算 (2進数の場合) (負の数)+(負の数)の例: 加算
34と13は負の数なので最初の1ビットを1にして、残りの7ビットで2の補数をつくる 加算 桁上げを無視する。8ビットのうち最初の1ビットが1なので負の数、残りの7ビットの2の補数をとると答えの ー47 が出てくる

27 補数を用いる利点 例にあげてきたように単純なルールに基づく加算のみで、減算も計算できる。 回路が簡単になる より高集積、より高速な回路

28 数値データ 固定小数点表示: S ・ ・ ・ 小数点を特定の位置に固定し、数値によって動かさない。 整数型のデータを表すのに用いられる。 △
コンピュータ内部ではデータは2進数で表現される 固定小数点表示: 小数点を特定の位置に固定し、数値によって動かさない。 S    ・  ・  ・      小数点 符号 (2の補数で表される) 整数型のデータを表すのに用いられる。 この場合、10進数で   から     までが表現できる

29 数値データ 浮動小数点表示: S ・・・ ・ ・ ・ 指数表示の概念を用いる(以下はIEEE方式)
・・・         ・ ・ ・ 指数部 仮数部 (8ビット) 小数点 (23ビット) 符号 極めて大きな数値や、小さな数値を表すのに用いられる。 なお、  は2進数で次式を満足するように正規化される

30 数値データ 2進化10進コード: 10進数の各桁を4ビットの2進数に変換して表す。 例)    と    をパック形式で表すと

31 論理データと文字データ 論理データ: 文字データ: ビットごとに論理演算の対象となる。ビットの値が1の時は真、0の時は偽を表す。
通常は8ビットや16ビットに複数個の論理値をパックし、1つのデータとして取り扱う。 文字データ: 英数字、カナ文字、特殊文字などコンピュータのコード体系に定められている文字を表す。 (WindowsではS-JISコードで日本語が表される)

32 本日のまとめ コンピュター上でのデータ表現 2進数と16進数 負の数の表現(補数) 補数による演算 数値データの表現
固定小数点表示、浮動小数点表示

33 本日の課題1  ( )に入る数字はいくらか? 2.ある自然数Xを2進数で表現すると、1と0が交互に並んだ2n桁の2進数1010・・・10となった。このとき、Xに関して以下の式が成立する。その理由を述べなさい。 (基本情報 改題) 3.      の計算を符号を含む8桁の2進数に直し、2の補数を用いた加算によって計算し、求めなさい。 (答えは符号を含む8桁の2進法によって書くこと)

34 本日の課題 2 4.次の24ビットの浮動小数点で表現できる最大値を表すビット列を、16進数として表したものはどうなるか。理由も付けて回答せよ。なお、ここでこの形式で表現される値は である。 (基本情報) S ・E・        ・ M ・


Download ppt "Ibaraki Univ. Dept of Electrical & Electronic Eng."

Similar presentations


Ads by Google