なぜBCDに6を追加するのですか?


10

場合によっては、2桁の合計が10未満の場合、BCD加算はバイナリ加算に似ています。

ただし、合計が9より大きい場合、結果を修正する必要があります。この修正は+(0110)です。

なぜ6を追加するのですか?なぜ他の番号ではないのですか?ウェブを検索しましたが、わかりません。


過去に質問されたこの質問のリンクが必要な場合:


回答:


20

4つの2進数は最大15(1111)まで数えますが、BCDでは最大9(1001)までの表現を使用します。15と9の差は6です。9+ 1で10、つまり1 0000を生成する場合は、6を追加して1010を1 0000にラップする必要があります。

分を追加する場合、59分を超える時間に同様に40を追加します。例:45分+ 35分は80分です。修正、40を追加して120にします。次に、コロンを挿入します(1:20)。1時間20分。40は100と1:00の差です。


2
明白でわずかに話題性のある賛成投票が多すぎます。11票を獲得できない難しい電子設計の回答を見つけて、1票を獲得してみませんか。
Kaz 2013年

2
さて、その新しい投票がいたはっきりだけにもかかわらず、私のコメントに。
Kaz 2013年

1
反ダムダウンルートLOL-へへへ投票による報復
Andy aka

1

数値の2の補数表現を指します。

https://en.wikipedia.org/wiki/Two%27s_complement

AからBを減算する場合(A-B)、代わりに(-B)をAに追加できます(A +(-B))。

合計が10より大きい場合、BCD表現には合計の最下位4桁が必要であるため、合計から10を減算する必要があります。

5ビットの10の2の補数は(Ten = 01010)であるため、数値から10を減算する場合、(-Ten)を数値に追加できます。これは、2の補数で(10110)として表されます。

BCD加算は、4ビットのバイナリ加算器のようなものです。つまり、加算するには、(-Ten){0110 =#6}の最下位4ビットが必要です。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.