<pre class="prettyprint linenums lang-py">#!/usr/bin/python3 #memories' address ad1 = '#0' ad2 = '#1' ad3 = '#3' #memories m1 = [] m2 = [] m3 = [] #registers r1 = [] r2 = [] r3 = [] #registers and memories init n1 = 0 n2 = 0 for i in range(32): r1.append(0) r2.append(0) r3.append(0) for j in range(8): m1.append(0) m2.append(0) m3.append(0) #Add number to memory address 0 an 1 def Write(): for i in range(8): m1[i] = R1 >> i & 0x01 m2[i] = R2 >> i & 0x01 print("write in memories...") print("#0 data:",m1[::-1]) print("#1 data:",m2[::-1]) #load r1,#0 def Load(): for i in range(8): r1[i] = m1[i] r2[i] = m2[i] print("load from memories to registers...") print("r1 ",r1[::-1]) print("r2 ",r2[::-1]) #Add r3,r1,r2 def Add(): for i in range(8): sum = r1[i]+r2[i]+r3[i] r3[i] = sum % 2 r3[i+1] = sum // 2 print("add r1 and r2 to r3...") print("r3 ", r3[::-1]) #Store r3,#3 def Store(): m3 = r3 print("write in memories...") print("#3 data:",m3[::-1]) #user input R1 = int(input('input first number:')) R2 = int(input('input second number:')) Write() Load() Add() Store()</pre>
lBJgMixUH