東京工業大学 工学院 情報通信系 2018年8月実施 S4 二進・BCD加減算器
Author
祭音Myyura (co-authored with GPT 5.6 SOL)
Description
S4. 否定を ,論理積を ,論理和を と表す。 ビット整数変数を とし,整数定数の10進・2進表記を , とする。論理式は最小数の AND 項からなる NOT–AND–OR 形式(積項の和形式)で答えよ。
-
二つの ビット入力 , の和 を出力する加算器は,図 S4.1 のように 個の全加算器(FA)を桁上げで接続して構成され, である。第 桁()の全加算器の真理値表 S4.1 を用い, を の論理式で表せ。
0 0 0 0 0 0 0 1 0 1 0 1 0 0 1 0 1 1 1 0 1 0 0 0 1 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 各 FA は を入力し, を出力する。最終キャリーは ,和の下位 ビットは である。
-
図 S4.2 の減算器は, の各ビットを反転して とし,加算器に を入力する。 は符号なし非負整数である。次の(ア)~(ウ)を埋めよ。
ビット加算器の ビット出力は である。 は の(ア)の補数であり,
より
さらに
とすると, との関係は となる。
-
図 S4.3 は4ビットで1桁の10進数を表す BCD(Binary-Coded Decimal)用加算器である。BCD 入力 , は ~,すなわち0~9を取る。 は下位桁からの BCD 桁上げである。二進加算器の5ビット出力
は0~19であり, のとき BCD 桁上げ とする。BCD 加算補正器により下位4ビットを BCD 出力 (0~9)へ補正する。
a) の論理式を示せ。
b) のとき補正器が に加える4ビット定数 を2進数で示せ。 -
図 S4.4 の BCD 減算器では, をビット反転して二進加算器に入力する。 には下位桁からの BCD 減算キャリーを入力し,()は下位桁でボローが発生したことを表す。
のときボローが生じ, となる。そのとき BCD 減算補正器は下位4ビットに を加えて BCD 出力 を得る。
図 S4.5 の共通加減算器には制御信号 があり, で BCD 加算 , で BCD 減算 を行う。入力補正器は から を作り,二進加算器は を加える。出力キャリーは とし,共通補正器は に応じて下位4ビットを補正する。
a) 入力補正器の各出力 ()を で表せ。
b) の論理式を示せ。
c) 共通補正器が に加える4ビット変数 の各ビットを, の論理式で表せ。
题目描述
以下用上方完整真值表及电路连接定义作答。、相乘、 分别表示非、与、或; 位整数为 ,常数用下标10、2区分十进制和二进制。所有逻辑式要求 AND 项数最少的积之和形式。
- 位加法器由 个全加器串接,输入为 ,初始进位 。由表 S4.1,用 表示第 位的和 、进位 ;最终进位为 。
- 对无符号非负整数 ,逐位取反 得 ,用 实现减法。填写(ア)至(ウ): 是 的哪一种补数;(イ),(イ);定义 时 ,否则 ,用加法器进位 表示 (ウ)。
- 一位 BCD 输入 都在0~9之间, 为低位十进制进位。二进制和 在0~19之间,十进制进位在 时为1。
a) 写出 。
b) 在 时,下四位需加哪个4位二进制常数 ,才能使输出 成为0~9的 BCD 数? - BCD 减法中, 取反后送入加法器; 表示低位发生借位,因此实际差为 ,范围为 ~9。负差对应 ;此时给下四位加 作 BCD 校正。共用电路的控制信号为 : 加法、 减法。
a) 用 写出输入校正器的各位 。
b) 写出统一进位函数 。
c) 用 分别写出要加到下四位的校正量 。
Kai
1)
和は奇数個の入力が1のときに1,桁上げは2個以上が1のときに1となる。
2)
なので
のときだけ となり,キャリーが1となる。
3)
より
十進の基数10と二進4ビットの基数16の差を補うので,加える定数は 。
4)a)
でそのまま, で反転するため
4)b)
加算時の式と減算時の を選択すると
4)c)
と略記する。必要な補正は で , で ,それ以外は 。よって