Skip to main content
Engineering LibreTexts

5.5: Exercises

  • Page ID
    26978
  • \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \) \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)\(\newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\) \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\) \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\) \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\) \( \newcommand{\Span}{\mathrm{span}}\) \(\newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\) \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\) \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\) \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\) \( \newcommand{\Span}{\mathrm{span}}\)\(\newcommand{\AA}{\unicode[.8,0]{x212B}}\)

    1. Implement the circuits in Figures 5.3.2 and 5.3.3.
    2. Completing the following table by implementing circuits in Logisim for the operations AND, OR, XOR, NAND, and NOR. Which operations appear to be associative?

      The output columns for the table below are defined as follows (the XOR operator is ^, and NOT is !, which is consistent with Java):

      As = (A*(B*(C*D)))

      Xs = (A^(B^(C^ D)))

      NOs = !(A+!(B+!(C+D))

      Ap = (A*B)*(C*D)

      Xp = (A^B)^(C^D)

      NOp = !(!(A+B)+!(C+D))

      Os = (A+(B+(C+D)))

      NAs = !(A*!(B*!(C*D))

       

      Op = (A+B)+(C+D)

      NAp = !(!(A*B)*!(C*D))

       

      Input

      Output

      A

      B

      C

      D

      As

      Ap

      Os

      Op

      Xs

      Xp

      NAs

      NAp

      NOs

      NOp

      0 0 0 0                    
      0 0 0 1                    
      0 0 1 0                    
      0 0 1 1                    
      0 1 0 0                    
      0 1 0 1                    
      0 1 1 0                    
      0 1 1 1                    
      1 0 0 0                    
      1 0 0 1                    
      1 0 1 0                    
      1 0 1 1                    
      1 1 0 0                    
      1 1 0 1                    
      1 1 1 0                    
      1 1 1 1                    
    3. Implement circuits in Logisim that show whether or not the operations AND, OR, XOR, NAND, NOR, and XNOR are commutative. This can be accomplished using circuits with only 3 inputs and 2 operations. Create a table similar to the one in problem 2.

      Which operations appear to be commutative?

    4. Implement two circuits showing the commutative property using your breadboard and chips.
    5. Implement circuits in Logisim that show whether or not the operations AND, OR, XOR, AND, NOR, and XNOR are distributive. This can be accomplished using circuits with only 3 inputs, but one version requires 2 operations and the other 3 operations. Create a table similar to the one in problem 2, except with only 3 inputs, and complete it. Which operations appear to be distributive? Implement the circuits using the breadboard.
    6. Implement two circuits showing the distributive property using your breadboard and chips.
    7. Show, by creating the circuit in Logisim, that a 32-way parallel AND operation can be implemented such that it only can be executed in 5*T time (where T is the time to do a single AND operation). What does this exercise imply about the runtime growth of associative operations when run in parallel? This question is for more advanced students, and assumes some background in data structures and algorithms, but illustrates an important point about parallelizing of associative operations.

    This page titled 5.5: Exercises is shared under a CC BY 4.0 license and was authored, remixed, and/or curated by Charles W. Kann III via source content that was edited to the style and standards of the LibreTexts platform; a detailed edit history is available upon request.

    • Was this article helpful?