Descubre millones de libros electrónicos, audiolibros y mucho más con una prueba gratuita

Solo $11.99/mes después de la prueba. Puedes cancelar en cualquier momento.

Circuitos Digitales: INGENIERÍA ELECTRÓNICA Y DE LAS COMUNICACIONES
Circuitos Digitales: INGENIERÍA ELECTRÓNICA Y DE LAS COMUNICACIONES
Circuitos Digitales: INGENIERÍA ELECTRÓNICA Y DE LAS COMUNICACIONES
Libro electrónico704 páginas2 horas

Circuitos Digitales: INGENIERÍA ELECTRÓNICA Y DE LAS COMUNICACIONES

Calificación: 4.5 de 5 estrellas

4.5/5

()

Leer la vista previa

Información de este libro electrónico

Este libro es el fruto del trabajo de recopilación, durante los últimos 28 años, de ejercicios planteados en los exámenes de la Escuela Superior de Informática de Ciudad Real, (UCLM), en asignaturas como: Circuitos Digitales, Diseño Digital, Tecnología de Computadores, Diseño Lógico, etc. Tiene como finalidad, facilitar al lector introducirse en el
IdiomaEspañol
Fecha de lanzamiento12 jun 2024
ISBN9788499647906
Circuitos Digitales: INGENIERÍA ELECTRÓNICA Y DE LAS COMUNICACIONES

Relacionado con Circuitos Digitales

Libros electrónicos relacionados

Ingeniería eléctrica y electrónica para usted

Ver más

Comentarios para Circuitos Digitales

Calificación: 4.545454545454546 de 5 estrellas
4.5/5

11 clasificaciones0 comentarios

¿Qué te pareció?

Toca para calificar

Los comentarios deben tener al menos 10 palabras

    Vista previa del libro

    Circuitos Digitales - Antonio Adán Oliver

    ACERCA DE LOS AUTORES

    Antonio Adán Oliver

    Antonio Adán Oliver es Licenciado en Ciencias Físicas por la Universidad Complutense de Madrid (Astrofísica) y por la UNED (Física Industrial). Es Doctor Ingeniero Industrial con Premio Extraordinario de Doctorado. Se incorporó en 1990 a la Universidad de Castilla La Mancha, siendo actualmente Catedrático de Universidad en Ingeniería de Sistemas y Automática. Es creador y director del grupo de investigación 3D Visual Computing & Robotics de la UCLM (1998), habiendo ejercido como investigador principal de proyectos regionales, nacionales e internacionales.

    Durante casi treinta como profesor, su experiencia docente en universidad abarca varias disciplinas relacionadas principalmente con sistemas digitales, computadores, visión por computador y robótica.

    Su labor investigadora está centrada dentro del campo de Visión por Computador en los temas: Sistemas sensoriales y digitalización 3D, Creación automática de modelos semánticos 3D con escáneres láser de edificaciones (BIM), Reconocimiento 3D, Interacción de robots en escenas complejas, Sistemas de Visión 3D en Robótica Móvil y Creación de modelos térmicos 3D de edificios. Posee numerosas publicaciones en revistas indexadas (ISI) y congresos internaciones de reconocido prestigio (IEEE, IAPR, ACM), siendo poseedor de varios premios nacionales e internacionales.

    Trabajó en el prestigioso Robotics Institute de la Carnegie Mellon University (Pittsburgh, PA, USA) durante un año (2009-2010) como profesor invitado y, posteriormente en el School of Energy, Geoscience, Infrastructure and Society, Heriot-Watt University (UK) en 2016. Ha sido revisor científico y miembro de varias sociedades científicas de carácter nacional e internacional.

    Inocente Sánchez Ciudad

    Inocente Sánchez Ciudad obtuvo el título de Ingeniero de Telecomunicación a los 23 años por la Universidad Politécnica de Madrid. Realizó los cursos de doctorado en la UNED.

    Trabajó como Ingeniero de Desarrollo desde marzo de 1987 hasta enero de 1992 en la empresa TECNOBIT S.A., en su centro de Valdepeñas (Ciudad Real).

    Desde marzo de 1992 hasta la actualidad es profesor de la Universidad de Castilla La Mancha en el área de conocimiento de Arquitectura y Tecnología de Computadores, en la Escuela Superior de Informática, antes llamada Escuela Universitaria de Informática, donde desarrolla su actividad docente impartiendo las asignaturas Tecnología de Computadores, Estructura de Computadores y Redes, de primer curso, y las asignaturas optativas, de los planes de estudios ya extinguidos, de Procesamiento de la Señal, Comunicación de Datos y Tecnología del Habla.

    Ha desempeñado cargos académicos en el ámbito universitario: Secretario de Centro en la antigua Escuela Universitaria de Informática y Secretario de Departamento en el Departamento de Informática de la UCLM.

    Pertenece grupo de investigación MAMI (Modelling Ambient Intelligence) de la UCLM, dirigido por el Dr. José Bravo.

    Blanca Quintana Galera

    Blanca Quintana es Ingeniera Industrial por la Universidad de Castilla-La Mancha y alumna de doctorado en Ciencias y Tecnologías Aplicadas a la Ingeniería Industrial. Es miembro del grupo de investigación 3D Visual Computing & Robotics (3DVC&R) de la UCLM. Ha sido investigadora visitante en la School of Energy, Geoscience, Infrastructure and Society de la Universidad Heriot-Watt (UK) durante 2018. Sus temas de investigación incluyen: sensores 3D, procesado de información 3D, escaneado automático 3D, y generación automática de modelos BIM con escáneres. En relación a estos temas, ha publicado varios artículos en revistas indexadas y en conferencias nacionales e internacionales.

    INTRODUCCIÓN

    El libro que tiene entre sus manos es el fruto del trabajo de recopilación de ejercicios planteados en los exámenes de la Escuela Superior de Informática de Ciudad Real de la Universidad de Castilla La Mancha (UCLM), en los últimos 28 años, en asignaturas relacionadas con el diseño de sistemas y circuitos digitales. El contenido de este documento correspondería a asignaturas con distintos nombres en otras facultades y escuelas de ingeniería, tales como: Circuitos Digitales, Diseño Digital, Tecnología de Computadores, Diseño Lógico, etc. En definitiva, se trata de una primera asignatura que introduce al alumno en el mundo de los circuitos digitales como base fundamental del hardware de los computadores.

    La casi totalidad de los problemas y ejercicios del libro son originales y han sido propuestos en exámenes por los profesores Antonio Adán Oliver (Catedrático de Universidad y Doctor Ingeniero Industrial) e Inocente Sánchez Ciudad (Titular de Escuela Universitaria e Ingeniero de Telecomunicación). Además, se ha contado con la valiosa colaboración de Blanca Quintana Galera (Ingeniero Industrial), quien ha realizado trabajos de revisión y preparación del documento.

    El libro consta de problemas y ejercicios de test que cubren gran parte de la temática de este tipo de asignatura. Muchos de los problemas plantean situaciones reales (a veces con un detallado enunciado) en las que se pide la definición e implementación del circuito digital que resuelve dicho problema. El libro está estructurado en siete capítulos que cubren los aspectos de: representación de la información y funciones lógicas, diseño lógico de circuitos combinacionales con puertas lógicas y con módulos combinaciones, y análisis y diseño de circuitos secuenciales basados en autómatas de estados finitos. Por supuesto, se supone conocida la teoría necesaria para realizar estos ejercicios. Dichos ejercicios, junto con las cuestiones tipo test planteadas, y cuya solución también se facilita, suponen una importante ayuda para afianzar los conocimientos adquiridos por los alumnos en las clases de teoría.

    Esperamos que el contenido de este libro resulte de utilidad para los alumnos de primer curso de titulaciones de ingeniería.

    LOS AUTORES

    Ciudad Real, julio de 2018

    1

    REPRESENTACIÓN DE LA INFORMACIÓN

    CONTENIDOS:

    Sistemas de numeración y cambios de base.

    Representación de números enteros.

    EJERCICIOS RESUELTOS

    1) Escriba el número decimal 250.5 en las bases 3, 4, 7 y 16.

    ---------------------

    Haremos con detalle el cambio a base 3. Separando las partes entera y decimal tenemos:

    Parte decimal

    0.5*3 = 1.5 → a-1=1

    0.5*3 = 1.5 → a-2=1

    ……………………

    0.5*3 = 1.5 → a-k=1

    Luego 250.5(10 = 100021.11…11(3 periódico puro 1

    Siguiendo el mismo procedimiento para los demás casos se obtiene:

    250.5(10 = 3322.20000(4 sólo hay una cifra decimal no nula (exacto)

    250.5(10 = 505.333(7 periódico puro 3

    250.5(10 = FA.80000(16 sólo hay una cifra decimal no nula (exacto)

    NOTA: el hecho de que un número en base decimal tenga un número limitado, incluso pequeño, de cifras decimales no nulas no implica que su representación en otra base deba tener un número finito de cifras no nulas. Puede darse el caso de que tenga infinitas cifras (periódico puro).

    2) Convierta los siguientes números decimales a binarios: 12.0625, 10⁴, 673.23 y 1998.

    ---------------------

    Igual que en el ejercicio anterior separamos las partes entera y decimal y procedemos de la misma forma.

    Parte decimal

    0.0625*2 = 0.125 → a-1=0

    0.125*2 = 0.25 → a-2=0

    0.25*2 = 0.5 → a-3=0

    0.5*2 = 1.0 → a-4=1. Nótese que 0,0625 es 1/16 = 2-4

    0*2 = 0 → resto a-k=0

    Por consiguiente 12.0625(10 = 1100.00010000(2

    Siguiendo el mismo procedimiento para los demás se obtiene:

    10⁴(10 = 10011100010000(2

    673.23(10 = 1010100001.00111(2

    1998(10 = 11111001110(2

    También se podría haber hecho en primer lugar el cambio a hexadecimal y después sustituir cada dígito hexadecimal por la cuaterna correspondiente, quedando

    10⁴(10 = 2710(16 = 0010 0111 0001 0000 (2

    673.23(10 = 2A1.3A (16 = 0010 1010 0001 . 0011 1010 (2

    1998(10 = 7CE(16 = 0111 1100 1110 (2

    O pasando previamente por octal, en cuyo caso cada dígito octal se sustituye por una terna

    10⁴(10 = 23420(8 = 010 011 100 010 000 (2

    673.23(10 = 1241,16(8 = 001 010 100 001 . 001 110 (2

    1998(10 = 3716 (8 = 011 111 001 110 (2

    3) Sumar los números en la base dada, sin convertirlos previamente a números decimales.

    a) 1230 y 23 en base 4.

    b) 135.4 y 43.2 en base 6.

    c) 367 y 715 en base 8.

    d) 296 y 57 en base 12.

    ---------------------

    a) Suma 1230(4 + 23(4 = 1313(4

    images/img-14-1.jpg

    b) Suma 135.4(6 + 43.2(6 = 223.0(6

    images/img-14-2.jpg

    c) Suma 367(8 + 715(8 = 1304(8

    images/img-14-3.jpg

    d) Suma 296(12 + 57(12 = 331(12

    images/img-14-4.jpg

    4) Convierta los números a las bases que se indican:

    a) 225.225(10 a binario, octal y hexadecimal.

    b) 11010111.110(2 a decimal, octal y hexadecimal.

    c) 623.77(8 a binario, decimal y hexadecimal.

    ---------------------

    a) 225.225(10 = 11100001 . 0011100110011001100…1100…(2

    Tomando grupos de 3 bits a derecha e izquierda del punto decimal obtenemos 011 100 001.001 110 011 por lo que 225.225(10 = 341.163163…163…(8

    Tomando grupos de 4 bits a derecha e izquierda del punto decimal obtenemos 1110 0001.0011 1001 1001 1001 … por lo que 225.225(10 = E1.39999…9…(16

    b) De forma inversa 11010111.110(2 = 1+2+4+16+64+128+1/2+1/4 = 215.75(10

    Tomando agrupaciones de tres y cuatro dígitos binarios se obtiene:

    11010111.110(2 = 327.6(8

    11010111.1100(2 = D7.C(16

    c) 623.77(8 = 3·1 + 2·8 + 6·64 · 7/8 + 7/64 = 403.984375(10

    Expresando cada dígito octal por tres bits se obtiene su representación binaria.

    623.77(8 = 110010011.111111(2

    Tomando agrupaciones de cuatro bits en la representación binaria se obtiene su representación en hexadecimal.

    623.77(8 = 0001 1001 0011.1111 1100(2 = 193. FC(16

    5) Expresar el número decimal 2223.39 en las bases binarias, base 6, octal y hexadecimal.

    ---------------------

    Base 2

    1000 1010 1111.1011 0001 1110 1011 1 (2

    Base 6

    images/img-15-1.jpg

    Parte decimal

    0.39 x 6 = 2.34 → 2

    0.34 x 6 = 2.04 → 2

    0.04 x 6 = 0.24 → 0

    0.24 x 6 = 1.44 → 1

    0.44 x 6 = 2.64 → 2

    0.64 x 6 = 3.84 → 3

    0.84 x 6 = 5.04 → 5

    Finalmente se tiene: 2223.39(10 = 14143.2201235(6

    Base 8

    images/img-16-1.jpg

    Parte decimal

    0.39 x 8 = 3.12 → 3

    0.12 x 8 = 0.96 → 0

    0.96 x 8 = 7.68 → 7

    0.68 x 8 = 5.44 → 5

    0.44 x 8 = 3.52 → 3

    Luego, 2223.39(10 = 4257.30753(8

    Base 16

    images/img-16-2.jpg

    Parte decimal

    0.39 x 16 = 6.24 → 6

    0.24 x 16 = 3.84 → 3

    0.84 x 16 = 13.44 → D

    0.44 x 16 = 7.04 → 7

    Luego, 2223.39(10 = 8AF.63D7(16

    6) El número 543(x se corresponde con el número 674 en base octal. ¿De qué base se trata x?

    ---------------------

    Inicialmente puede deducirse que la base buscada es mayor o igual a 6. En base n, siendo n≤6 se emplean los dígitos entre 0 y n-1.

    Después se convierte 674(8 a base decimal, siendo igual a: 6*64+7*8+4 = 444(10

    Finalmente, se plantea la ecuación de segundo orden 5x² + 4x + 3 = 444

    Resolviendo, se obtiene que x = 9 y x = −9.8, descartando esta última solución por ser negativa. Por tanto, se puede afirmar que 543 estaba en base 9.

    7) Convertir los siguientes números a base hexadecimal.

    a) 10000.1(2

    b) 255.875(10

    c) 675.03(8

    d) 345.3(5

    ---------------------

    a) 10000.1(2 = 10.8(16

    0001    0000    .1000

       1         0           8     →     10.8

    b) 255.875(10 = FF.E(16

    images/img-17-1.jpg

    c) 675.03(8 = 1BD.0C(16

    Pasamos el número octal a binario, 0001 1011 1101 . 0000 1100 y de binario a hexadecimal, quedando:

    0001 → 1

    1011 → B

    1101 → D

    0000 → 0

    1100 → C

    d) 345.3(5 = ¿?

    No es posible realizar esta operación ya que en el código numérico hay dígitos iguales a la base. Con una base n = 5, los dígitos deben estar en el rango [0,4].

    8) Convertir los siguientes números a sus binarios equivalentes.

    a) 7.5(8

    b) 475(10

    c) 475(16

    d) 555(5

    ---------------------

    a) 7.5(8 = 111.101(2

    b) 475(10 = 111011011(2

    images/img-18-1.jpg

    c) 475(16 = 100 0111 0101(2

    4(10 → 0100(2

    7(10 → 0111(2

    5(10 → 0101(2

    d) 555(5 = ¿?

    No es posible realizar esta operación ya que en el código numérico hay dígitos iguales a la base. Con una base n = 5, los dígitos deben estar en el rango [0,4].

    9) Expresa el número 2778(10 en base hexadecimal. ¿Te sugiere algo el resultado? Comprueba tu respuesta con el código QR.

    images/img-18-2.jpg

    ---------------------

    images/img-19-1.jpg

    10) Realiza la operación (126+589) (10 en binario, base 7, octal y hexadecimal:

    ---------------------

    Binario

    Primero pasaremos ambos números a binario y luego los sumaremos.

    images/img-19-2.jpg

    También podríamos haber observado que 126 = 127 – 1. Como 127 es un número binario con todos sus bits a 1, 126 será el mismo cambiando el último 1 por un 0.

    images/img-19-3.jpg

    Como 589 = 512 + 77 bastaría con pasar a binario 77 y añadir un 1 en la posición de la potencia 9 de 2. O incluso observando que 589 = 512 + 64 + 13, realmente sólo habría que poner en binario 13, cuyo valor es inmediato: 1101. Realizamos la suma en binario.

    images/img-20-1.jpg

    Comprobación: 126+589 = 715. Por otro lado 512+128+64+8+2+1 = 715

    Base 7

    images/img-20-2.jpgimages/img-20-3.jpg

    Comprobación: 126+589 = 715. Por otro lado 2*7³ +4*7+1 = 715

    Base 8

    images/img-20-4.jpg

    Comprobación: 126+589 = 715. Por otro lado 1*8³ +3*64+8+3 = 715

    Base 16

    images/img-20-5.jpgimages/img-20-6.jpg

    Comprobación: 126+589 = 715. Por otro lado 2*16² +12*16+11 = 715

    11) Realiza las siguientes operaciones con complemento a 1.

    a) 47 + 18

    b) -24 - 26

    c) 344 + 144

    d) 244-25

    ---------------------

    a) 47 + 18

    47(10 = 010 1111 (C1 7 bits

    18(10 = 01 0010 (C1 6 bits

    b) -24 - 26

    24 →01 1000 6 bits -24 → 10 0111

    26 →01 1010 6 bits -26 → 10 0101

    Comprobación: 1001101 (-50) → 0110010 (+50)

    c) 344 + 144

    344 → 01 0101 1000 10 bits

    134 → 0 1000 0110 9 bits

    Con 10 bits el rango es 2⁹ – 1 = 511

    344 + 134 = 478 → luego no existirá overflow con 10 bits

    images/img-22-1.jpg

    Comprobación: 0111011110 → 2+4+8+16+64+128+256 = 478

    d) 241-25

    241 → 0 1111 0001

    -25 → 10 0110, ya que +25(C1 = 011001

    images/img-22-2.jpg

    Comprobación: 011011000 → 8+16+64+128 = 216

    12) Realiza la suma A+B en Ca1 con 8 bits, siendo A=100, B= - 23.

    ---------------------

    images/img-22-3.jpg

    Comprobación: 01001101 → 1+4+8+64 = 77

    13) Comprueba si se pueden realizar, sin desbordamiento, las siguientes operaciones con el número de bits que se indican, trabajando en complemento a 2. En los casos en los que sí se pueda, realizar la operación y comprobar el resultado.

    a) 157 + 222 con 7 bits

    b) -245 - 112 con 10 bits

    c) 344 + 134 con 10 bits

    d) 344 – 220 con 8 bits

    e) 344 – 569 con 6 bits

    f) 350 – 533 con 8 bits

    ---------------------

    Rango de representaciones:

    6 bits = [ -2⁵, 2⁵ – 1] = [-32, 31]

    7 bits = [ -2⁶, 2⁶ – 1] = [-64, 63]

    8 bits = [ -2⁷, 2⁷ – 1] = [-128, 127]

    10 bits = [ -2⁹, 2⁹ – 1] = [-512, 511]

    a) 157 + 222 con 7 bits

    No se puede realizar, ya que sumamos fuera de rango

    b) -245 - 112 con 10 bits

    Sí se puede realizar, porque tanto operandos como resultado están dentro de rango

    +245(10 = 1111 0101(C2 → 00 1111 0101 usando 10 bits

    -245(10 = 11 0000 1011(C2

    +112(10 = 111 0000(C2 → 00 0111 0000 usando 10 bits

    -112(10 = 11 1001 0000(C2

    images/img-23-1.jpg

    Comprobación: 11010011011 → -357, ya que

    00101100101 → 1+4+32+64+256 = 357

    c) 344 + 134 con 10 bits

    Sí se puede realizar, ya que tanto operandos como resultado están dentro de rango

    344(10 = 01 0101 1000C2)

    134(10 = 00 1000 0110C2)

    images/img-23-2.jpg

    Comprobación: 0111011110 → 2+4+8+16+64+128+256 = 478

    d) 344 – 220 con 8 bits

    No se puede realizar, está fuera de rango alguno de los operandos, aunque no el resultado.

    e) 344 – 569 con 6 bits

    No se puede realizar, ya que están fuera de rango todos los operandos e incluso el resultado.

    f) 350 – 533 con 8 bits

    No se puede realizar, porque están fuera de rango todos los operandos y el resultado.

    14) Realiza los siguientes cambios de base, poniendo en todos

    ¿Disfrutas la vista previa?
    Página 1 de 1