4.6+Operaciones+Logicas+Alu

OPERACIONES LOGICAS

Operaciones Lógicas de Comparación. • La puerta lógica Y, más conocida por su nombre en inglés AND, realiza la función booleana de producto lógico. Su símbolo es un punto (•), aunque se suele omitir. Así, el producto lógico de las variables A y B se indica como AB, y se lee A y B o simplemente A por B. La ecuación característica que describe el comportamiento de la puerta AND es: Su tabla de verdad es la siguiente: Tabla de verdad puerta AND Entrada A Entrada B Salida AB 0 0 0 0 1 0 1 0 0 1 1 1 Su definición se puede dar, como una compuerta que entrega un 1 lógico sólo si todas las entradas están a nivel alto 1. • La puerta lógica O, más conocida por su nombre en inglés OR, realiza la operación de suma lógica. La ecuación característica que describe el comportamiento de la puerta OR es: Su tabla de verdad es la siguiente: Tabla de verdad puerta OR Entrada A Entrada B Salida A + B 0 0 0 0 1 1 1 0 1 1 1 1 Podemos definir la puerta O como aquella que proporciona a su salida un 1 lógico si al menos una de sus entradas está a 1. • La puerta lógica O-exclusiva, más conocida por su nombre en inglés XOR, realiza la función booleana A’B+AB’. Su símbolo es el más (+) inscrito en un círculo. En la figura de la derecha pueden observarse sus símbolos en electrónica. La ecuación característica que describe el comportamiento de la puerta XOR es: Su tabla de verdad es la siguiente: Tabla de verdad puerta XOR Entrada A Entrada B Salida A B 0 0 0 0 1 1 1 0 1 1 1 0 Se puede definir esta puerta como aquella que da por resultado uno, cuando los valores en las entradas son distintos. ej: 1 y 0, 0 y 1 (en una compuerta de dos entradas). Si la puerta tuviese tres o más entradas, la XOR tomaría la función de suma de paridad, cuenta el número de unos a la entrada y si son un número impar, pone un 1 a la salida, para que el número de unos pase a ser par. Esto es así porque la operación XOR es asociativa, para tres entradas escribiríamos: a (b c) o bien (a b) c. Su tabla de verdad sería: XOR de tres entradas Entrada A Entrada B Entrada C Salida A B C 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 0 0 1 1 0 1 0 1 1 0 0 1 1 1 1


 * Autor: Fajardo Nieto Yessica Lizbeth**

Operaciones simples
La mayoría de las ALU pueden realizar las siguientes operaciones:
 * Operaciones aritméticas de números enteros ([|adición], [|sustracción], y a veces [|multiplicación] y [|división], aunque esto es más costoso)
 * [|Operaciones lógicas] de [|bits] ([|AND], [|NOT], [|OR], [|XOR], [|XNOR])
 * [|Operaciones de desplazamiento] de bits (Desplazan o rotan una palabra en un número específico de bits hacia la izquierda o la derecha, con o sin [|extensión de signo]). Los desplazamientos pueden ser interpretados como multiplicaciones o divisiones por 2.

Operaciones complejas
Un ingeniero puede diseñar una ALU para calcular cualquier operación, sin importar lo compleja que sea; el problema es que cuanto más compleja sea la operación, tanto más costosa será la ALU, más espacio usará en el procesador, y más energía disipará, etc. Por lo tanto, los ingenieros siempre calculan un compromiso, para proporcionar al [|procesador] (u otros circuitos) un ALU suficientemente poderoso para hacerlo rápido, pero no tan complejo para llegar a ser prohibitivo. Imagine que usted necesita calcular, digamos, la raíz cuadrada de un número; el ingeniero digital examinará las opciones siguientes para implementar esta operación: Las opciones arriba van de la más rápida y más costosa a la más lenta y económica. Por lo tanto, mientras que incluso la computadora más simple puede calcular la fórmula más complicada, las computadoras más simples generalmente tomarán un tiempo largo porque varios de los pasos para calcular la fórmula implicarán las opciones #3, #4 y #5 de arriba. Los procesadores poderosos como el [|Pentium IV] y el [|AMD64] implementan la opción #1 para las operaciones más complejas y la más lenta #2 para las operaciones extremadamente complejas. Eso es posible por la capacidad de construir ALU muy complejas en estos procesadores.
 * 1) Diseñar una ALU muy compleja que calcule la raíz cuadrada de cualquier número en un solo paso. Esto es llamado **cálculo en un solo ciclo de reloj**.
 * 2) Diseñar una ALU compleja que calcule la raíz cuadrada con varios pasos (como el algoritmo que aprendimos en la escuela). Esto es llamado **cálculo interactivo**, y generalmente confía en el control de una [|unidad de control] compleja con [|microcódigo] incorporado.
 * 3) Diseñar una ALU simple en el procesador, y vender un procesador separado, especializado y costoso, que el cliente pueda instalar adicional al procesador, y que implementa una de las opciones de arriba. Esto es llamado **[|coprocesador]**.
 * 4) [|Emular] la existencia del coprocesador, es decir, siempre que un programa intente realizar el cálculo de la raíz cuadrada, hacer que el procesador compruebe si hay presente un coprocesador y usarlo si lo hay; si no hay uno, [|interrumpir] el proceso del programa e invocar al [|sistema operativo] para realizar el cálculo de la raíz cuadrada por medio de un cierto algoritmo de software. Esto es llamado **emulación por software**.
 * 5) Decir a los programadores que no existe el coprocesador y no hay emulación, así que tendrán que escribir sus propios algoritmos para calcular raíces cuadradas por software. Esto es realizadado por **bibliotecas de software**.

media type="youtube" key="E2u1MROhlAA" height="385" width="640"

**PROPOSICIÓN**
Una proposición es una expresión donde se afirma o se niega algo. Tal proposición puede ser calificada sin ambigüedades como V o F, también recibe el nombre de [|Valor] de Verdad. A una proposición se le representa por letras minúsculas como p, q, r, s, t. Ejemplo: p: Talara es una provincia de Piura V q: 18 + 5 = 28 F Además proposiciones como: ¡Hola que tal! Muy buenas noches No son proposiciones lógicas porque no podemos decir de ellas que son Verdaderas o Falsas. **PROPOSICIÓN SIMPLE** Es aquella que no se relaciona con otra. Ejemplo: p: 17 es un número impar. q: [|El Sol] no es una estrella. r: La maca es una planta oriunda del Perú. s: La suma de dos números pares es otro número impar.

**CONECTIVOS LÓGICOS**
Los conectivos lógicos sirven para enlazar dos o más proposiciones. Estos conectivos son "y", "o", "no es cierto que", "entonces", "si y solo sí", cuyos [|símbolos] se ven en el siguiente cuadro: O No es cierto que Entonces Si y solo sí || Ù Ú ~ Þ Û ||
 * CONECTIVO LÓGICO || SÍMBOLO ||
 * Y

**PROPOSICIÓN COMPUESTA**
Es aquella donde aparecen dos o más proposiciones simples enlazadas por conectivos lógicos. Ejemplo: p Ù q p Þ q Ú r Al enlazar n proposiciones simples resultan 2n [|valores] de verdad para cada proposición al escribir todas las posibles combinaciones de V o F. p
 * César Vallejo nació en Trujillo y es peruano.
 * (Tengo sueño de día entonces estoy cansado) o me faltan vitaminas
 * Para 1 proposición hay 21 = 2 valores de verdad.

V F p q
 * Para 2 proposiciones hay 22 = 4 valores de verdad.

V V V F F V F F p q r
 * Para 3 proposiciones hay 23 = 8 valores de verdad.

V V V V V F V F V F V V F V F F F V F F F

**OPERACIONES LÓGICAS**
Combinando proposiciones simples obtenemos proposiciones compuestas mediante [|operaciones] lógicas. Las principales operaciones lógicas son: conjunción, disyunción, negación, condicional y Bicondicional. A cada una de estas operaciones lógicas le corresponde una tabla de verdad. p q > || V V V F F V F F F F F || > || V V V F F V F F V V F || ~ p se lee: no p o también: no es cierto que p > || V F V || > || V V V F F V F F F V V || V F F V F F || V F F V ||
 * p Ù q ||
 * V
 * 1) Conjunción. Dos proposiciones simples p y q relacionadas por el conectivo lógico "y" conforman la proposición compuesta llamada conjunción, la cual se simboliza así: p Ù q.
 * p q || p Ú q ||
 * V
 * 1) Disyunción. Dos proposiciones simples p y q relacionadas por el conectivo lógico "O" conforman la proposición compuesta llamada disyunción, la cual se simboliza así: p Ú q.
 * p || ~ p ||
 * F
 * 1) Negación. Dada una proposición simple p, esta puede ser negada y convertirse en otra proposición llamada negación de p, la cual se simboliza así:
 * p q || p Þ q ||
 * V
 * 1) Condicional o Implicativa. Dos proposiciones simples p y q relacionadas por el conectivo lógico "entonces" conforman la proposición compuesta llamada condicional o implicativa, la cual se simboliza así: p Þ q:
 * 2) Bicondicional. Dos proposiciones simples p y q relacionadas por el conectivo lógico "si y sólo si" conforman la proposición compuesta llamada conjunción, la cual se simboliza así: p « q.
 * p q || p Û q ||
 * V V

**FÓRMULA LÓGICA**
Una fórmula [|lógica] es la representación simbólica de una proposición compuesta, las cuales están conformadas por proposiciones simples, conectivos lógicos y [|signos] de agrupación. Al evaluar una fórmula se confecciona su tabla de verdad. Ejemplo: Se tiene las siguientes proposiciones: p: Abigail Alcalde Flores gana la partida de damas. q: Abigail Alcalde Flores recibe el premio. Una proposición compuesta empleando p y q será: "Si Abigail Alcalde Flores gana la partida entonces recibe el premio", la cual se representa simbólicamente así: p Þ q. Expresiones como: ~ p Þ ~ q (p Ú q) Þ ~ q ~ (p Ù q) Û (~ p Ú q) reciben el nombre de fórmulas lógicas. Al evaluar una Fórmula se confecciona su Tabla de Verdad. Al evaluar una fórmula debemos tener en cuenta un orden en las operaciones lógicas a realizarse. Empezamos con las operaciones encerradas por los paréntesis interiores, siguen todas las negaciones y luego se avanza de izquierda a derecha. Es recomendable identificar el conectivo principal de la fórmula que representa la operación final a realizarse. Si en el interior de un paréntesis alguna proposición simple esta precedida por una negación, primero se opera ésta. He aquí algunos ejemplos resueltos: v v f v f f Desarrollamos (2) conjunción v f v f v f Desarrollamos (3) Bicondicional del resultados de v f f f v f (1) y (2) f v v v v v f v f v f f f f v v f f f f f v f f (1) (3) (1)
 * Si en esta tabla todos [|los valores] de verdad son V, tal fórmula es una **TAUTOLOGÍA**.
 * Si en esta tabla todos los [|valores] de verdad son F, tal fórmula es una **CONTRADICCIÓN**.
 * Si en esta tabla, algunos de los valores de verdad son V y otros son F, tal fórmula es una **CONTINGENCIA**.
 * 1) v v v v v v Desarrollamos (1) condicional

v v f v v v Desarrollamos (1) conjunción v f v v v v (2) después de haber negado (1) f v v f v v Desarrollamos (3) disyunción f v v f f f Desarrollamos (4) condicional del resultado de (2) (1) (4) (3) (2) y (3)
 * 1) p q r ( p Þ q ) Û ( q Ù r )

Posteo: romero Pasteén Luis Angel

OPERACIONES LOGICAS ALU



Operaciones complejas
Un ingeniero puede diseñar una ALU para calcular cualquier operación, sin importar lo compleja que sea; el problema es que cuanto más compleja sea la operación, tanto más costosa será la ALU, más espacio usará en el procesador, y más energía disipará, etc. Por lo tanto, los ingenieros siempre calculan un compromiso, para proporcionar al procesador (u otros circuitos) un ALU suficientemente poderoso para hacerlo rápido, pero no tan complejo para llegar a ser prohibitivo. Imagine que usted necesita calcular, digamos, la raíz cuadrada de un número; el ingeniero digital examinará las opciones siguientes para implementar esta operación: Las opciones arriba van de la más rápida y más costosa a la más lenta y económica. Por lo tanto, mientras que incluso la computadora más simple puede calcular la fórmula más complicada, las computadoras más simples generalmente tomarán un tiempo largo porque varios de los pasos para calcular la fórmula implicarán las opciones #3, #4 y #5 de arriba. Los procesadores poderosos como el Pentium IV y el AMD64 implementan la opción #1 para las operaciones más complejas y la más lenta #2 para las operaciones extremadamente complejas. Eso es posible por la capacidad de construir ALU muy complejas en estos procesadores.
 * 1) Diseñar una ALU muy compleja que calcule la raíz cuadrada de cualquier número en un solo paso. Esto es llamado **cálculo en un solo ciclo de reloj**.
 * 2) Diseñar una ALU compleja que calcule la raíz cuadrada con varios pasos (como el algoritmo que aprendimos en la escuela). Esto es llamado **cálculo interactivo**, y generalmente confía en el control de una compleja con incorporado.
 * 3) Diseñar una ALU simple en el procesador, y vender un procesador separado, especializado y costoso, que el cliente pueda instalar adicional al procesador, y que implementa una de las opciones de arriba. Esto es llamado
 * 4) la existencia del coprocesador, es decir, siempre que un programa intente realizar el cálculo de la raíz cuadrada, hacer que el procesador compruebe si hay presente un coprocesador y usarlo si lo hay; si no hay uno, interrumpir el proceso del programa e invocar al sistema operativo para realizar el cálculo de la raíz cuadrada por medio de un cierto algoritmo de software. Esto es llamado **emulación por software**.
 * 5) Decir a los programadores que no existe el coprocesador y no hay emulación, así que tendrán que escribir sus propios algoritmos para calcular raíces cuadradas por software. Esto es realizadado por **bibliotecas de software**.

Entradas y salidas
Las entradas a la ALU son los datos en los que se harán las operaciones (llamados operandos) y un código desde la unidad de control indicando qué operación realizar. Su salida es el resultado del cómputo de la operación. En muchos diseños la ALU también toma o genera como entradas o salidas un conjunto de códigos de condición desde o hacia un registro de estado. Estos códigos son usados para indicar casos como acarreo entrante o saliente, overflow, división por cero, etc. [ 2 ]



​ posteo ana lucia vanegas martinez

 **UNIDAD ARITMÉTICA Y LÓGICA (ALU)** Una unidad aritmética lógica puede realizar un conjunto de operaciones aritméticas básicas y un conjunto de operaciones lógicas, a través de líneas de selección. En inglés //ALU// significa //Arithmetic Logic Unit// (Unidad Aritmética Lógica). La figura 3.12.1. muestra el diagrama de bloques de una //ALU//. Figura 3.12.1. Diagrama de bloques de una ALU Las cuatro entradas de A se combinan con las de //B// generando una operación de salida de cuatro bits en //F//. La entrada de selección de modo //S2// distingue entre las operaciones aritméticas y lógicas. Las entradas de selección //S0// y //S1// determinan la operación aritmética o lógica. Con las entradas //S0// y //S1// se pueden elegir cuatro operaciones aritméticas (con //S2// en un estado) y cuatro logicas (con //S2// en otro estado). Los acarreos de entrada y salida tienen sentido únicamente en las operaciones aritméticas. El diseño de una //ALU// implica el diseño de la sección aritmética, la sección lógica y la modificación de la sección aritmética para realizar las operaciones aritméticas y lógicas. **Sección Lógica** Los datos de entrada en una operación lógica son manipulados en forma separada y los bits son tratados como variables binarias. En la tabla 3.12.1. se listan cuatro operaciones lógicas //OR//, //OR - Exclusiva//, //AND// y //NOT//. En el circuito, las dos líneas de selección (//S1,// //S0//) permiten seleccionar una de las compuertas de entrada, correspondientes a la función Fi. Tabla 3.12.1. Tabla de Función Lógica. El circuito lógico de la figura 3.12.2 es una etapa de un circuito lógico de //n// bits. Figura 3.12.2. Diagrama lógico de un circuito lógico de una ALU El componente básico de la sección aritmética es un sumador en paralelo (ver [|lección 3.10.1]). Las operaciones aritméticas configuradas en el circuito aritmético se presentan en la tabla 3.12.2. En una //ALU//, la suma aritmética se puede implementar con un número binario en //A//, otro número en la entrada //B// y el acarreo de entrada //Cin// en un valor lógico //0//. El resto de las funciones se enuncian en la columna descripción. Tabla 3.12.2. Tabla de la Función F en un Circuito Aritmético La implementación de las funciones anteriores por medio de un circuito lógico sencillo se describe a continuación. El circuito se diseña bajo el precepto de intervenir cada entrada //Bi// para obtener las siguientes funciones: Tabla 3.12.3. Tabla del circuito para la entrada Bi La figura 3.12.3. muestra el circuito. Figura 3.12.3. Circuito para la tabla 3.12.2. Por medio de estas funciones se pueden lograr las funciones de la tabla 3.12.2 al agregar el número Ni (tabla 3.12.3) a la entrada A a través de un sumador en paralelo para cada etapa, teniendo en cuenta el valor de la entrada Cin. El circuito combinacional aritmético se muestra en la figura 3.12.4. En la figura, la entrada A se denomina Mi en el sumador completo. Figura 3.12.4. Circu
 * ~ **S1** ||~ **S0** ||~ **Salida** ||~ **Función Fi** ||
 * < 0 ||< 0 ||< F=Ai+Bi ||< OR ||
 * < 0 ||< 1 ||< F=Ai Å Bi ||< XOR ||
 * < 1 ||< 0 ||< F=Ai·Bi ||< AND ||
 * < 1 ||< 1 ||< F=A'i ||< NOT ||
 * Sección Aritmética**
 * ~ **Selección de Función** ||~ **Salida N** ||~ **Función** ||~ **Descripción** ||
 * < // S1  // ||< // S0 // ||< //Cin// ||< //N// ||< //F// ||<   ||
 * < 0 ||< 0 ||< 0 ||< 0 ||< A ||< Transferir A ||
 * < 0 ||< 0 ||< 1 ||< 0 ||< A+1 ||< Incrementar A ||
 * < 0 ||< 1 ||< 0 ||< B ||< A+B ||< Suma ó agregar B a A ||
 * < 0 ||< 1 ||< 1 ||< B ||< A+B+1 ||< Suma con accarreo ó agregar B a A más 1 ||
 * < 1 ||< 0 ||< 0 ||< B’ ||< A+B’ ||< Agregar el complemento de 1 de B a A ||
 * < 1 ||< 0 ||< 1 ||< B’ ||< A+B’+1 ||< Agregar el complemento de 2 de B a A ||
 * < 1 ||< 1 ||< 0 ||< Todos unos ||< A-1 ||< Decrementar A ||
 * < 1 ||< 1 ||< 1 ||< Todos unos ||< A ||< Trasferir A ||
 * ~ **S1** ||~ **S0** ||~ **Ni** ||
 * < 0 ||< 0 ||< 0 ||
 * < 0 ||< 1 ||< Bi ||
 * < 1 ||< 0 ||< Bi' ||
 * < 1 ||< 1 ||< 1 ||

= HERNANDEZ MAERTINEZ OSCAR =

 