Advertisement
Guest User

Untitled

a guest
Sep 24th, 2018
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.90 KB | None | 0 0
  1. import acumulador
  2. import inv
  3. import mux
  4. from somador_4bits import full_adder4, int2bus
  5.  
  6. A = 15
  7. Sel0 = 0
  8. Sel1 = 1
  9. ck = 0
  10. acc_S = 'X'
  11.  
  12. def addac(A, Sel0, Sel1, ck, anterior):
  13.     inv_S = 15 - A
  14.  
  15.     mux0_S = mux.mux2(A, inv_S, Sel0)
  16.  
  17.     if anterior != 0 and anterior != 1:
  18.         ant = 0
  19.     else:
  20.         ant = anterior
  21.  
  22.     add_S, COUT = full_adder4(int2bus(mux0_S), int2bus(ant), Sel0)
  23.  
  24.     S = mux.mux2(mux0_S, add_S, Sel1)
  25.  
  26.     acc_S = acumulador.acumula([S, ck], anterior)
  27.  
  28.     if acc_S == 15:
  29.         acc_S = 1
  30.  
  31.     print('{0:04b}'.format(A) + "_" +
  32.           str(Sel0) + "_" +
  33.           str(Sel1) + "_" +
  34.           str(ck) + "_" +
  35.           '{0:04b}'.format(add_S) + "_" +
  36.           str(acc_S))
  37.  
  38.     return acc_S
  39.  
  40. a = addac(15, 0, 0, 0, acc_S)
  41. a = addac(15, 0, 0, 1, a)
  42. a = addac(1, 0, 1, 0, a)
  43. a = addac(0, 0, 0, 1, a)
  44. a = addac(15, 0, 1, 0, a)
  45. a = addac(15, 0, 1, 1, a)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement