# 19-bit adder with 74LS283 ICs

• Comp Sci
• Lord Doppler

#### Lord Doppler

Homework Statement
Relevant Equations
Boolean Algebra, Logic
Hello, I'm doing a 19 bit adder in Proteus with the 74LS283 IC and I have a problem, I'm adding 1110111000110011010 (487834) with 0001110110001100111 (60519) which the result is 10000101111000000001 (548353) and Proteus doesn't the correct result. It is not taking into account the carry, someone can help me?

Why are you grounding S3 in the most significant digit? One should not ground any output, and you need that output to get your 20 bit result.

The carry bits seem to be getting through just fine.

Lord Doppler
Why are you grounding S3 in the most significant digit? One should not ground any output, and you need that output to get your 20 bit result.

The carry bits seem to be getting through just fine.
Because I need add 19 bits and not 20 bits I grounded S3 in the most significant digit, it's correct? I need add 19 bits and the carry

It is not correct to ground any output. You let it float if you don't care about the 20th bit. Grounding an output wastes energy at best, and burns out your chip at worst. I don't think LS technology will burn out since the fan-out implies an obvious current limit.

In that case, the 1st 19 bits of the the answer you got (shown in the bottom horizontal line) is correct. But you show 20 bits of answer, the last one being taken from the wrong line.

I need add 19 bits and the carry
The carry is the 21st bit. If you want 20 bits of output, s4 is that 20th bit, and it should be c4 that you let float. c4 is always going to be low anyway in the last chip.

I see you are calling the c4 line 's19', but it is actually 's20'. s19 is the s4 line, which you've grounded.

Last edited:
Lord Doppler
It is not correct to ground any output. You let it float if you don't care about the 20th bit. Grounding an output wastes energy at best, and burns out your chip at worst. I don't think LS technology will burn out since the fan-out implies an obvious current limit.

In that case, the 1st 19 bits of the the answer you got (shown in the bottom horizontal line) is correct. But you show 20 bits of answer, the last one being taken from the wrong line.

The carry is the 21st bit. If you want 20 bits of output, s4 is that 20th bit, and it should be c4 that you let float. c4 is always going to be low anyway in the last chip.

I see you are calling the c4 line 's19', but it is actually 's20'. s19 is the s4 line, which you've grounded.
Oh ok, then I will never ground an output, I didn't know. I tried float the C4 in the last chip and connect S4 to S19 for obtain the 20 bits in the output as you said and it works! Thanks

Halc