Số nhớ ban đầu là C0 Vậy tổng ra sẽ là C4S4S3S2S1, với C4 là số nhớ của phép cộng Ta cũng có thể nối chồng IC cộng lại với nhau để cho số bit gấp đôi.. Hình 2.3.13 Mạch logic của 74LS83
Trang 1Số nhớ ban đầu là C0
Vậy tổng ra sẽ là C4S4S3S2S1, với C4 là số nhớ của phép cộng
Ta cũng có thể nối chồng IC cộng lại với nhau để cho số bit gấp đôi Khi đó bit MSB (C4) của tầng đầu được nối tới ngõ vào nhớ ban đầu (C0) của tầng sau
Hình 2.3.13 Mạch logic của 74LS83
Bảng sự thật của mạch cộng 4 bit 74LS83
Cộng nối tiếp
Ngoài cách cộng song song như đã thấy ở trên, còn một dạng mạch cộng số nhiều bit nữa gọi là mạch cộng nối tiếp Khi này 2 bit LSB của các số được cộng trước, bit LSB của tầng được đưa ra 1 ghi dịch còn số nhớ sẽ quay trở về cộng chung với
2 bit kế tiếp bit LSB và cứ vậy cho đến 2 bit cuối cùng được cộng Mạch ghi dịch ngõ ra dịch chuyển sang phải qua mỗi lần cộng sẽ cho ra kết quả cộng số nhớ cuối cùng trở thành bit MSB của tổng ra Rõ ràng mạch thực hiện phép tính chậm hơn
so với cộng song song, nó cũng cần 1 xung nhịp để giữ cho các mạch làm việc động bộ
Trang 2Hình 2.3.14 Mạch cộng 4 bit nối tiếp
MẠCH TRỪ 3.1 Mạch trừ nửa và trừ đủ
Cũng gồm 2 loại mạch trừ nửa hay chưa đủ : haft subtractor (HS) và trừ đủ hay còn gọi là trừ bán phần : full subtractor (FS) (khi này cần bit mượn Bi trước tham gia vào phép tính)
Phép trừ thực ra là phép cộng với số âm Để có số âm của 1 số ta lấy bù 1 của số
đó, còn khi thực hiện mạch thì đó là cổng đảo
Hình 2.3.15 là mạch trừ HS và bên cạnh là bảng trạng thái
Hình 2.3.15 Mạch trừ nửa, bảng trạng thái và mạch logic Còn hình 2.3.17 là mạch trừ FS cùng bảng trạng thái hoạt động ở bên cạnh
Trang 3
hình 2.3.17 Mạch trừ đủ
Về cấu trúc mạch trừ cũng tương tự mạch cộng chỉ khác là số bị trừ B cần phải qua cổng đảo khi thực hiện AND với số trừ A để cho số mượn R Mạch trừ FS cũng gồm 2 mạch trừ HS và cổng OR ở ngõ ra cho số mượn B0
Hình 2.3.18 Mạch trừ hết
3.2 Mạch trừ nhiều bit
Với mạch trừ nhị phân nhiều bit, cũng có thể thực hiện song song các mạch cộng
FS từng bit nhưng các bit của số bị trừ cần được đảo, số nhớ của tầng cuối cần đem
về bit nhớ ban đầu của tầng đầu Hình minh hoạ cho mạch trừ nhị phân 4 bit
Hình 2.3.19b Trừ 4 bit nối tiếp
Trang 4Hình 2.3.19a Mạch trừ 4 bit song
song
3.3 Mạch cộng trừ kết hợp
Bây giờ nếu thêm vào một số cổng
logic cần thiết ta đã có 1 mạch có thể
cộng hay trừ tuỳ theo ngõ vào điều
khiển CT
Khi CT = 0, các cổng EXOR có 1
ngõ ở thấp nên cho số B qua không
bị đảo, tức là mạch thực hiện phép
cộng
Khi CT = 1, các cổng EXOR có 1
ngõ ở cao nên hoạt động như 1 cổng
NOT, số B bị đảo, khi này mạch
thực hiện phép cộng A + (-B) tức là
phép trừ
Co3 là bit LSB của tổng được vòng
trở lại (qua cổng AND) về Ci0; sẽ
cho phép cộng nhiều bit
Hình 2.3.21 Mạch cộng trừ dùng bù 1
Trang 5Ngoài cách dùng bù 1, ta cũng có thể
dùng bù 2 (lấy bù 1 rồi cộng thêm 1)
để thực hiện phép toán trừ nhị phân
kể cả số có dấu Cách này được sử
dụng phổ biến ở VXL và máy tính
Hình 2.3.22 là mạch cộng trừ 2 số 4
bit dùng bù 2 Để ý là mạch khá
giống như nó ở cách dùng bù 1
nhưng bit nhớ ra cuối cùng không
cần đem về tầng đầu Tổng hay hiệu
ra ở dạng bù 2, muốn lấy đúng kết
quả thì phải chuyển trở lại
Khi đó mạch cộng trừ nhị phân 4 bit
dùng bù 2 sẽ như sau :
Hình 2.3.22 Mạch cộng trừ dùng bù 2
CỘNG TRỪ BCD 4.1 Cộng 2 số BCD
Số BCD thực ra cũng là số nhị phân n bit nhưng chỉ có 10 tổ hợp trạng thái từ 0000 đến 1001 (biểu thị số thập phân tương ứng là từ 0 đến 9) nên cách cộng cũng tương
tự như cổng số nhị phân nhiều bit Tuy nhiên khi tổng vượt quá 1001 thì tức là