Số nhớ ban đầu là C 0 Vậy tổng ra sẽ là C 4 S 4 S 3 S 2 S 1 , với C 4 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 (C 4 ) của tầng đầu được nối tới ngõ vào nhớ ban đầu (C 0 ) 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ộ Hì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 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 H ì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 Ngoà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à . 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ố. 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ượ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ừ