Binary arithmetic · Aritmética binaria
| English | Español |
|---|---|
| register/ˈredʒɪstə/ | registro |
| overflow/ˌəʊvəˈfləʊ/ | desbordamiento |
| two's complement/tuːz ˈkɒmplɪmənt/ | complemento a dos |
| logical shift/ˈlɒdʒɪkl ʃɪft/ | desplazamiento lógico |
| most significant bit/məʊst sɪɡˈnɪfɪkənt bɪt/ | bit más significativo |
Doing maths with 1s and 0s
- Computers add, shift and store negative numbers — all in binary.
- An 8-bit register 寄存器 has limits, so results can overflow 溢出.
- Two's complement 补码 lets us store negatives.
Hacer matemáticas con 1s y 0s
- Los computadores suman, desplazan y almacenan números negativos — todo en binario.
- Un registro de 8 bits tiene límites, por lo que los resultados pueden desbordarse (overflow).
- El complemento a dos permite almacenar valores negativos.
Binary addition and overflow
- Add column by column from the right, carrying a 1: $1+1 = 10$ (write 0, carry 1).
- Example:
01110110(118) +00110000(48) =10100110(166). - An 8-bit register holds 0–255. A result above 255 needs a 9th bit that won't fit — this is overflow, and the stored answer is wrong.
An 8-bit place-value chart. The 1s sit under the values that add up to 150 (128 + 16 + 4 + 2).
Suma binaria y desbordamiento
- Se suma columna por columna desde la derecha, llevando un 1: $1+1 = 10$ (se escribe 0, se lleva 1).
- Ejemplo:
01110110(118) +00110000(48) =10100110(166). - Un registro de 8 bits contiene valores de 0 a 255. Un resultado superior a 255 necesita un 9º bit que no cabrá — esto es un desbordamiento, y la respuesta almacenada será incorrecta.

Un gráfico de valor posicional de 8 bits. Los 1s están debajo de los valores que suman 150 (128 + 16 + 4 + 2).
Binary arithmetic · Aritmética binaria
byte = Σ place values · byte = Σ valores de posición
See how an 8-bit pattern stores a number from 0 to 255. · Observa cómo un patrón de 8 bits almacena un número de 0 a 255.
Add the binary numbers 0101 + 0011. Give the 4-bit result. · Suma los números binarios 0101 + 0011. Da el resultado de 4 bits.
5 + 3 = 8 = 1000.
Overflow in an 8-bit register happens when: · El desbordamiento en un registro de 8 bits ocurre cuando:
An 8-bit register holds 0–255; a bigger result needs a 9th bit that cannot fit, so it is lost. · Un registro de 8 bits almacena valores de 0–255; un resultado mayor necesita un 9º bit que no cabe, por lo que se pierde.
Logical binary shift
- A logical shift 逻辑移位 moves all bits left or right; bits off the end are lost and zeros fill the gap.
- A left shift multiplies by 2 per place; a right shift divides by 2 per place.
- Example:
00110101(53) left-shifted by 2 →11010100(212) = $53 \times 4$.
Each hexadecimal digit becomes its own 4-bit group (nibble): F = 1111, 0 = 0000, 8 = 1000.
Desplazamiento binario lógico
- Un desplazamiento lógico mueve todos los bits hacia la izquierda o hacia la derecha; los bits que salen por el extremo se pierden y se rellenan con ceros.
- Un desplazamiento a la izquierda multiplica por 2 por posición; un desplazamiento a la derecha divide entre 2 por posición.
- Ejemplo:
00110101(53) desplazado a la izquierda en 2 posiciones →11010100(212) = $53 \times 4$.

Cada dígito hexadecimal se convierte en su propio grupo de 4 bits (nibble): F = 1111, 0 = 0000, 8 = 1000.
A logical left shift by 1 multiplies an unsigned number by what? · Un desplazamiento lógico a la izquierda por 1 multiplica un número sin signo por ¿qué?
Each left-shift place multiplies by 2 (a right shift divides by 2). · Cada desplazamiento a la izquierda multiplica por 2 (un desplazamiento a la derecha divide por 2).
00110101 is 53. After a logical left shift of 2 places, what denary value does it hold? · 00110101 es 53. Después de un desplazamiento lógico a la izquierda de 2 posiciones, ¿qué valor decimal contiene?
Left shift by 2 = ×4: 53 × 4 = 212 (11010100). · Desplazamiento a la izquierda por 2 = ×4: 53 × 4 = 212 (11010100).
Two's complement (negatives)
- In two's complement, the most significant bit 最高有效位 has a negative value:
-128 64 32 16 8 4 2 1. - MSB 0 → positive; MSB 1 → negative.
- To make a number negative: write the positive, flip every bit, then add 1. e.g. $+40$ =
00101000→ flip11010111→ +1 →11011000= $-40$. - Range of 8-bit two's complement: −128 to +127.
The most significant bit is worth −128, so 11011000 = −128 + 64 + 16 + 8 = −40
Complemento a dos (negativos)
- En el complemento a dos, el bit más significativo tiene un valor negativo:
-128 64 32 16 8 4 2 1. - MSB (bit más significativo) 0 → positivo; MSB 1 → negativo.
- Para hacer un número negativo: escribe el positivo, invierte cada bit, luego suma 1. Por ejemplo, $+40$ =
00101000→ invierte11010111→ +1 →11011000= $-40$. - Rango del complemento a dos de 8 bits: -128 a +127.

El bit más significativo vale -128, por lo tanto 11011000 = -128 + 64 + 16 + 8 = -40
What is the most negative value an 8-bit two's complement number can store? · ¿Cuál es el valor más negativo que puede almacenar un número de complemento a dos de 8 bits?
The MSB is worth −128, so the range is −128 to +127. · El MSB vale −128, por lo que el rango es de −128 a +127.
You've got it
- add binary with carries; overflow = result needs a 9th bit an 8-bit register can't hold (0–255)
- logical shift: left = ×2, right = ÷2 per place; bits off the end are lost
- two's complement: MSB worth −128; flip bits and add 1 to negate; range −128 to +127
Ya lo tienes
- suma binaria con acarreos; desbordamiento = resultado necesita un 9º bit que un registro de 8 bits no puede contener (0–255)
- desplazamiento lógico: izquierda = ×2, derecha = ÷2 por posición; los bits que salen por el extremo se pierden
- complemento a dos: MSB vale -128; invierte bits y suma 1 para negar; rango -128 a +127