O que é uma mudança aritmética?
Uma mudança aritmética é uma maneira de multiplicar ou dividir números. Os turnos aritméticos são normalmente executados em números binários. O conceito, no entanto, é aplicável a qualquer esquema de numeração.
A seguir, é apresentado um exemplo usando números decimais que têm dez como base. Quando 250 é aritmeticamente deslocado para a esquerda, o número resultante é 2500, que é 250 multiplicado por dez. Quando 250 representados usando 4 dígitos como 0250, é aritmeticamente deslocado para a direita, o número resultante é 0025, que é 250 dividido por dez. Portanto, é mais correto dizer que uma mudança aritmética é uma maneira de multiplicar ou dividir números pela base do esquema numérico.
números binários têm 2 como base; Eles são representados usando 0s e 1s e podem ser assinados ou não assinados. Em um turno esquerdo aritmético, os números são deslocados por um espaço para a esquerda, com zero sendo colocado à direita. Em uma mudança à direita aritmética, os números são deslocados por um espaço para a direita, com o número mais à esquerda sendo retidoEd à esquerda. Em geral, uma mudança pode ser para espaços "n".
Em números binários não assinados, cada posição é uma potência de 2; portanto, o binário 1 é decimal 1, o binário 10 é decimal 2, o binário 100 é decimal 4 e assim por diante. Então 0110 é decimal 6. Quando um deslocamento aritmético esquerdo é realizado, o número resultante é 1100, que é decimal 12. Quando uma mudança à direita aritmética é realizada, o número resultante é 0011, que é decimal 3.
Como os números podem ser positivos e negativos, números binários assinados são usados, onde o bit mais à esquerda é 0 para um número positivo ou zero e 1 para um número negativo. Assim, para números de 4 bits, 0111, que é decimal 7, é o maior número positivo. O esquema mais frequentemente usado para números negativos tem 1111 como decimal -1 e isso desce até 1000, que é decimal -8.
Uma mudança de esquerda aritmética em 1101, por exemplo, que é decimal -3, resulta em 1010, queé decimal -6. Uma mudança à direita aritmética em 1010, que é decimal -6, resulta em 1101, que é decimal -3. Observe que o bit mais à esquerda é retido.
Uma mudança aritmética nem sempre corresponde à multiplicação e divisão para cada número e cada número no esquema numérico. Existem limitações em cada extremidade do esquema numérico. Por exemplo, o turno esquerdo de 0111, decimal 7, fornece -2 decimal e a mudança certa de 1111, decimal -1, fornece -1 decimal -1.
Uma mudança aritmética tem uma simplicidade inerente e uma mudança é muito mais rápida a realizar do que a multiplicação e divisão normais. Portanto, os computadores suportam esta operação usando um mecanismo relativamente simples chamado unidade de mudança ou registro de turno. Os programadores experientes utilizam esta operação enquanto as limitações mencionadas acima forem evitadas ou cuidadas.