Talk:Arithmetic logic unit

Suggest 1 possible wiki link and 2 possible backlinks for "arithmetic and logical unit"
This comment has been moved here from Talk:arithmetic and logical unit.

An automated Wikipedia link suggester has some possible wiki link suggestions for the "arithmetic and logical unit" article:

Additionally, there are some other articles which may be able to linked to this one (also known as "backlinks"): Notes: The article text has not been changed in any way; Some of these suggestions may be wrong, some may be right. Feedback: I like it, I hate it, Please don't link to. --LinkBot 11:29, 1 Dec 2004 (UTC)
 * Can link carry-out : ...es, which can be used to indicate cases such as carry-in or carry-out, overflow, or other statuses....
 * In Combinatorial logic, can backlink arithmetic logic unit : ...natorial and sequential logic. For example, the part of an arithmetic logic unit, or ALU, that does mathematical calculations is made fr...
 * In List of 7400 series integrated circuits, can backlink Arithmetic Logic Unit : ...: 9-bit Odd/Even Parity Generator and Checker *74181: 4-bit Arithmetic Logic Unit and Function Generator...

Rationale
Doesn't say why many operations are grouped in an ALU. AI says it's because up to 70% of circuits are shared between operations, but I find no proper source. Musaran (talk) 13:44, 10 November 2023 (UTC)
 * In what way are operations grouped? Who is AI? What do you mean when you say operations “share circuits”? Lambtron  talk  18:41, 10 November 2023 (UTC)
 * I think I understand what you mean. Are you asking why an ALU has the ability to perform a variety of operations, and what purpose does that serve? Lambtron  talk  01:02, 11 November 2023 (UTC)

First paragraph needs rewording: change “integer binary numbers” to “integer represented as binary numbers”.
Correction required to first paragraph: First paragraph needs rewording: change from “integer binary numbers” to “integers represented as binary numbers”. 2A02:C7E:5A76:8100:F0AC:B684:F79C:4102 (talk) 16:30, 25 March 2024 (UTC)

Ones' complement, two's complement and shift and subtract are unclear and misleading
The existing text referring to Ones' complement and two's complement is unclear. Specifically,
 * Two's complement: A (or B) is subtracted from zero and the difference appears at Y.
 * The text is essentially circular, in that it assumes that subtract means a twos' complement subtract.


 * Increment: A (or B) is increased by one and the resulting value appears at Y.
 * The text doesn't explain what increased means, i.e., is there an end-around carry?


 * Decrement: A (or B) is decreased by one and the resulting value appears at Y.
 * The text doesn't explain what decreased means, i.e., is there an end-around borrow?


 * Arithmetic shift: the operand is treated as a two's complement integer, meaning that the most significant bit is a "sign" bit and is preserved.
 * This doesn't address what happens to low order bits in a left shift, and an arithmetic right shift must propogate the sign bit for both ones' complement and two's complement machines.

I'm not sure of the best way to fix this. -- Shmuel (Seymour J.) Metz Username:Chatul (talk) 18:38, 3 July 2024 (UTC)


 * The ALU article seems to assume two's complement arithmetic which does not do end-around carries. Maybe that assumption needs to be stated. On your individual questions:
 * Two's complement: This is trying to explain the urinary function, not the number system. So to get the two's compliment of a number, A is subtracted from zero with no end-around carries. I removed the (negation) in parenthesis as it did not match the Wikipedia negation article, though some processors have a NEG instruction.
 * Increment/Decrement: Should probably say "1 is added to/subtracted from A and the resulting value appears on Y"
 * Arithmetic shift: Both arithmetic shift and logical shift have problems. Maybe they should be defined like this:
 * Left arithmetic shift, zero is shifted in from right (LSB).
 * Right arithmetic Shift: Sign bit is duplicated from left (MSB). This is used to shift signed integers.
 * Left logical shift: same as left arithmetic shift
 * Right logical shift: a logic zero is shifted into the operand from the left. This is used to shift unsigned integers.
 * It's important that we don't over-describe these functions in the text. Article is about ALUs. If the reader is curious, she can click on the links. RastaKins (talk) 20:27, 3 July 2024 (UTC)
 * The vocabulary in your response also assumes 2's complement; "subtracted" means three different things on 1s' complement, 2's complement and sign-magnitude machine. Similarly, an arithmetic left shift behaves differently. What is need is a table showing the operation on one axis and the representation on the other. For example, an arithmetic left shift on a 1s' complement machine is a circular left shif; the right side is filled with sign bits rater than zero bits. -- Shmuel (Seymour J.) Metz Username:Chatul (talk) 20:23, 4 July 2024 (UTC)