Search This Blog

CALCULATOR LIBRARY



PLEASE COPY THE FOLLOWING CODES INTO MS NOTEPAD IN YOUR SYSTEM AND SAVE IT AS CALCULATOR LIB.circ AFTER THIS OPEN YOUR LOGISIM PROJECT AND GO TO PROJECT MENU, CLICK LOAD LIB, THEN LOGISIM LIB. THIS CODE WILL APPEAR AS LOGISIM CIRCUITS. SO USE THIS TO ACCOMPLISH PROCESSING PART OF THE CALCULATOR.


<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project source="2.7.1" version="1.0">
This file is intended to be loaded by Logisim (http://www.cburch.com/logisim/).
<lib desc="#Wiring" name="0"/>
  <lib desc="#Gates" name="1"/>
  <lib desc="#Plexers" name="2"/>
  <lib desc="#Arithmetic" name="3"/>
  <lib desc="#Memory" name="4">
    <tool name="ROM">
      <a name="contents">addr/data: 8 8
0
</a>
    </tool>
  </lib>
  <lib desc="#I/O" name="5"/>
  <lib desc="#Base" name="6">
    <tool name="Text Tool">
      <a name="text" val=""/>
      <a name="font" val="SansSerif plain 12"/>
      <a name="halign" val="center"/>
      <a name="valign" val="base"/>
    </tool>
  </lib>
  <main name="DEC TO BIN"/>
  <options>
    <a name="gateUndefined" val="ignore"/>
    <a name="simlimit" val="1000"/>
    <a name="simrand" val="0"/>
  </options>
  <mappings>
    <tool lib="6" map="Button2" name="Menu Tool"/>
    <tool lib="6" map="Button3" name="Menu Tool"/>
    <tool lib="6" map="Ctrl Button1" name="Menu Tool"/>
  </mappings>
  <toolbar>
    <tool lib="6" name="Poke Tool"/>
    <tool lib="6" name="Edit Tool"/>
    <tool lib="6" name="Text Tool">
      <a name="text" val=""/>
      <a name="font" val="SansSerif plain 12"/>
      <a name="halign" val="center"/>
      <a name="valign" val="base"/>
    </tool>
    <sep/>
    <tool lib="0" name="Pin">
      <a name="tristate" val="false"/>
    </tool>
    <tool lib="0" name="Pin">
      <a name="facing" val="west"/>
      <a name="output" val="true"/>
      <a name="labelloc" val="east"/>
    </tool>
    <tool lib="1" name="NOT Gate"/>
    <tool lib="1" name="AND Gate"/>
    <tool lib="1" name="OR Gate"/>
  </toolbar>
  <circuit name="DEC TO BIN">
    <a name="circuit" val="DEC TO BIN"/>
    <a name="clabel" val=""/>
    <a name="clabelup" val="east"/>
    <a name="clabelfont" val="SansSerif plain 12"/>
    <wire from="(40,130)" to="(100,130)"/>
    <wire from="(200,170)" to="(260,170)"/>
    <wire from="(40,280)" to="(160,280)"/>
    <wire from="(310,110)" to="(310,130)"/>
    <wire from="(310,210)" to="(310,230)"/>
    <wire from="(160,70)" to="(160,280)"/>
    <wire from="(380,320)" to="(380,340)"/>
    <wire from="(140,230)" to="(140,310)"/>
    <wire from="(220,270)" to="(260,270)"/>
    <wire from="(100,330)" to="(330,330)"/>
    <wire from="(290,280)" to="(330,280)"/>
    <wire from="(200,170)" to="(200,390)"/>
    <wire from="(40,390)" to="(200,390)"/>
    <wire from="(180,190)" to="(180,290)"/>
    <wire from="(290,80)" to="(310,80)"/>
    <wire from="(290,180)" to="(310,180)"/>
    <wire from="(310,300)" to="(330,300)"/>
    <wire from="(360,290)" to="(380,290)"/>
    <wire from="(120,180)" to="(120,220)"/>
    <wire from="(40,30)" to="(60,30)"/>
    <wire from="(40,180)" to="(120,180)"/>
    <wire from="(60,40)" to="(60,350)"/>
    <wire from="(60,40)" to="(260,40)"/>
    <wire from="(80,20)" to="(80,80)"/>
    <wire from="(120,120)" to="(120,180)"/>
    <wire from="(140,90)" to="(260,90)"/>
    <wire from="(60,30)" to="(60,40)"/>
    <wire from="(100,130)" to="(100,140)"/>
    <wire from="(40,440)" to="(220,440)"/>
    <wire from="(80,20)" to="(260,20)"/>
    <wire from="(310,80)" to="(310,90)"/>
    <wire from="(310,180)" to="(310,190)"/>
    <wire from="(310,300)" to="(310,310)"/>
    <wire from="(140,90)" to="(140,230)"/>
    <wire from="(380,290)" to="(380,300)"/>
    <wire from="(140,310)" to="(310,310)"/>
    <wire from="(40,80)" to="(80,80)"/>
    <wire from="(100,240)" to="(100,330)"/>
    <wire from="(40,230)" to="(140,230)"/>
    <wire from="(160,70)" to="(260,70)"/>
    <wire from="(100,140)" to="(260,140)"/>
    <wire from="(100,240)" to="(260,240)"/>
    <wire from="(360,100)" to="(450,100)"/>
    <wire from="(360,200)" to="(450,200)"/>
    <wire from="(290,30)" to="(450,30)"/>
    <wire from="(100,140)" to="(100,240)"/>
    <wire from="(310,90)" to="(330,90)"/>
    <wire from="(310,110)" to="(330,110)"/>
    <wire from="(290,130)" to="(310,130)"/>
    <wire from="(310,190)" to="(330,190)"/>
    <wire from="(310,210)" to="(330,210)"/>
    <wire from="(290,230)" to="(310,230)"/>
    <wire from="(380,300)" to="(400,300)"/>
    <wire from="(380,320)" to="(400,320)"/>
    <wire from="(360,340)" to="(380,340)"/>
    <wire from="(220,270)" to="(220,440)"/>
    <wire from="(430,310)" to="(450,310)"/>
    <wire from="(180,290)" to="(180,340)"/>
    <wire from="(180,190)" to="(260,190)"/>
    <wire from="(180,290)" to="(260,290)"/>
    <wire from="(60,350)" to="(330,350)"/>
    <wire from="(40,340)" to="(180,340)"/>
    <wire from="(120,120)" to="(260,120)"/>
    <wire from="(120,220)" to="(260,220)"/>
    <comp lib="0" loc="(450,200)" name="Pin">
      <a name="facing" val="west"/>
      <a name="output" val="true"/>
      <a name="label" val="B"/>
      <a name="labelloc" val="north"/>
    </comp>
    <comp lib="1" loc="(360,290)" name="OR Gate">
      <a name="size" val="30"/>
      <a name="inputs" val="2"/>
    </comp>
    <comp lib="0" loc="(40,340)" name="Pin">
      <a name="tristate" val="false"/>
      <a name="label" val="N3"/>
      <a name="labelloc" val="north"/>
    </comp>
    <comp lib="0" loc="(40,440)" name="Pin">
      <a name="tristate" val="false"/>
      <a name="label" val="N1"/>
      <a name="labelloc" val="north"/>
    </comp>
    <comp lib="0" loc="(40,30)" name="Pin">
      <a name="tristate" val="false"/>
      <a name="label" val="N9"/>
      <a name="labelloc" val="north"/>
    </comp>
    <comp lib="1" loc="(360,100)" name="OR Gate">
      <a name="size" val="30"/>
      <a name="inputs" val="2"/>
    </comp>
    <comp lib="0" loc="(40,130)" name="Pin">
      <a name="tristate" val="false"/>
      <a name="label" val="N7"/>
      <a name="labelloc" val="north"/>
    </comp>
    <comp lib="1" loc="(290,230)" name="OR Gate">
      <a name="size" val="30"/>
      <a name="inputs" val="2"/>
    </comp>
    <comp lib="1" loc="(360,340)" name="OR Gate">
      <a name="size" val="30"/>
      <a name="inputs" val="2"/>
    </comp>
    <comp lib="1" loc="(290,180)" name="OR Gate">
      <a name="size" val="30"/>
      <a name="inputs" val="2"/>
    </comp>
    <comp lib="1" loc="(360,200)" name="OR Gate">
      <a name="size" val="30"/>
      <a name="inputs" val="2"/>
    </comp>
    <comp lib="1" loc="(430,310)" name="OR Gate">
      <a name="size" val="30"/>
      <a name="inputs" val="2"/>
    </comp>
    <comp lib="0" loc="(450,30)" name="Pin">
      <a name="facing" val="west"/>
      <a name="output" val="true"/>
      <a name="label" val="D"/>
      <a name="labelloc" val="north"/>
    </comp>
    <comp lib="0" loc="(450,310)" name="Pin">
      <a name="facing" val="west"/>
      <a name="output" val="true"/>
      <a name="label" val="A"/>
      <a name="labelloc" val="north"/>
    </comp>
    <comp lib="0" loc="(40,230)" name="Pin">
      <a name="tristate" val="false"/>
      <a name="label" val="N5"/>
      <a name="labelloc" val="north"/>
    </comp>
    <comp lib="0" loc="(40,390)" name="Pin">
      <a name="tristate" val="false"/>
      <a name="label" val="N2"/>
      <a name="labelloc" val="north"/>
    </comp>
    <comp lib="0" loc="(450,100)" name="Pin">
      <a name="facing" val="west"/>
      <a name="output" val="true"/>
      <a name="label" val="C"/>
      <a name="labelloc" val="north"/>
    </comp>
    <comp lib="1" loc="(290,80)" name="OR Gate">
      <a name="size" val="30"/>
      <a name="inputs" val="2"/>
    </comp>
    <comp lib="0" loc="(40,490)" name="Pin">
      <a name="tristate" val="false"/>
      <a name="label" val="N0"/>
      <a name="labelloc" val="north"/>
    </comp>
    <comp lib="0" loc="(40,80)" name="Pin">
      <a name="tristate" val="false"/>
      <a name="label" val="N8"/>
      <a name="labelloc" val="north"/>
    </comp>
    <comp lib="1" loc="(290,30)" name="OR Gate">
      <a name="size" val="30"/>
      <a name="inputs" val="2"/>
    </comp>
    <comp lib="0" loc="(40,280)" name="Pin">
      <a name="tristate" val="false"/>
      <a name="label" val="N4"/>
      <a name="labelloc" val="north"/>
    </comp>
    <comp lib="1" loc="(290,280)" name="OR Gate">
      <a name="size" val="30"/>
      <a name="inputs" val="2"/>
    </comp>
    <comp lib="0" loc="(40,180)" name="Pin">
      <a name="tristate" val="false"/>
      <a name="label" val="N6"/>
      <a name="labelloc" val="north"/>
    </comp>
    <comp lib="1" loc="(290,130)" name="OR Gate">
      <a name="size" val="30"/>
      <a name="inputs" val="2"/>
    </comp>
  </circuit>
  <circuit name="4 TO 2 ENCODER">
    <a name="circuit" val="4 TO 2 ENCODER"/>
    <a name="clabel" val=""/>
    <a name="clabelup" val="east"/>
    <a name="clabelfont" val="SansSerif plain 12"/>
    <wire from="(40,130)" to="(100,130)"/>
    <wire from="(80,20)" to="(140,20)"/>
    <wire from="(60,30)" to="(60,40)"/>
    <wire from="(40,30)" to="(60,30)"/>
    <wire from="(170,30)" to="(190,30)"/>
    <wire from="(170,80)" to="(190,80)"/>
    <wire from="(60,40)" to="(140,40)"/>
    <wire from="(60,90)" to="(140,90)"/>
    <wire from="(60,40)" to="(60,90)"/>
    <wire from="(40,80)" to="(80,80)"/>
    <wire from="(100,70)" to="(140,70)"/>
    <wire from="(80,20)" to="(80,80)"/>
    <wire from="(100,70)" to="(100,130)"/>
    <comp lib="0" loc="(40,180)" name="Pin">
      <a name="tristate" val="false"/>
      <a name="label" val="I0"/>
      <a name="labelloc" val="north"/>
    </comp>
    <comp lib="0" loc="(190,80)" name="Pin">
      <a name="facing" val="west"/>
      <a name="output" val="true"/>
      <a name="label" val="B"/>
      <a name="labelloc" val="north"/>
    </comp>
    <comp lib="0" loc="(40,30)" name="Pin">
      <a name="tristate" val="false"/>
      <a name="label" val="I3"/>
      <a name="labelloc" val="north"/>
    </comp>
    <comp lib="1" loc="(170,80)" name="OR Gate">
      <a name="size" val="30"/>
      <a name="inputs" val="2"/>
    </comp>
    <comp lib="0" loc="(40,80)" name="Pin">
      <a name="tristate" val="false"/>
      <a name="label" val="I2"/>
      <a name="labelloc" val="north"/>
    </comp>
    <comp lib="1" loc="(170,30)" name="OR Gate">
      <a name="size" val="30"/>
      <a name="inputs" val="2"/>
    </comp>
    <comp lib="0" loc="(190,30)" name="Pin">
      <a name="facing" val="west"/>
      <a name="output" val="true"/>
      <a name="label" val="A"/>
      <a name="labelloc" val="north"/>
    </comp>
    <comp lib="0" loc="(40,130)" name="Pin">
      <a name="tristate" val="false"/>
      <a name="label" val="I1"/>
      <a name="labelloc" val="north"/>
    </comp>
  </circuit>
  <circuit name="BIN TO BCD">
    <a name="circuit" val="BIN TO BCD"/>
    <a name="clabel" val=""/>
    <a name="clabelup" val="east"/>
    <a name="clabelfont" val="SansSerif plain 12"/>
    <wire from="(670,260)" to="(670,270)"/>
    <wire from="(420,220)" to="(480,220)"/>
    <wire from="(700,420)" to="(750,420)"/>
    <wire from="(690,240)" to="(740,240)"/>
    <wire from="(340,360)" to="(660,360)"/>
    <wire from="(340,230)" to="(340,360)"/>
    <wire from="(610,230)" to="(660,230)"/>
    <wire from="(400,290)" to="(450,290)"/>
    <wire from="(430,520)" to="(480,520)"/>
    <wire from="(520,230)" to="(580,230)"/>
    <wire from="(550,460)" to="(610,460)"/>
    <wire from="(660,270)" to="(660,360)"/>
    <wire from="(320,260)" to="(420,260)"/>
    <wire from="(320,260)" to="(320,290)"/>
    <wire from="(530,540)" to="(640,540)"/>
    <wire from="(300,230)" to="(340,230)"/>
    <wire from="(580,230)" to="(580,250)"/>
    <wire from="(460,160)" to="(500,160)"/>
    <wire from="(500,310)" to="(590,310)"/>
    <wire from="(460,160)" to="(460,390)"/>
    <wire from="(250,290)" to="(250,450)"/>
    <wire from="(450,240)" to="(480,240)"/>
    <wire from="(170,230)" to="(260,230)"/>
    <wire from="(480,470)" to="(510,470)"/>
    <wire from="(640,430)" to="(640,540)"/>
    <wire from="(440,160)" to="(460,160)"/>
    <wire from="(640,430)" to="(670,430)"/>
    <wire from="(590,310)" to="(590,410)"/>
    <wire from="(420,220)" to="(420,260)"/>
    <wire from="(610,230)" to="(610,460)"/>
    <wire from="(410,220)" to="(420,220)"/>
    <wire from="(170,290)" to="(250,290)"/>
    <wire from="(450,240)" to="(450,290)"/>
    <wire from="(530,480)" to="(530,540)"/>
    <wire from="(500,160)" to="(500,210)"/>
    <wire from="(480,470)" to="(480,520)"/>
    <wire from="(250,450)" to="(510,450)"/>
    <wire from="(580,250)" to="(660,250)"/>
    <wire from="(590,410)" to="(670,410)"/>
    <wire from="(250,290)" to="(320,290)"/>
    <wire from="(190,250)" to="(260,250)"/>
    <wire from="(530,390)" to="(530,440)"/>
    <wire from="(500,250)" to="(500,310)"/>
    <wire from="(660,270)" to="(670,270)"/>
    <wire from="(460,390)" to="(530,390)"/>
    <wire from="(170,230)" to="(170,290)"/>
    <comp lib="0" loc="(410,220)" name="Pin">
      <a name="width" val="4"/>
      <a name="tristate" val="false"/>
      <a name="label" val="BINARY"/>
    </comp>
    <comp lib="0" loc="(400,290)" name="Constant">
      <a name="width" val="4"/>
      <a name="value" val="0x6"/>
    </comp>
    <comp lib="0" loc="(740,240)" name="Pin">
      <a name="facing" val="west"/>
      <a name="output" val="true"/>
      <a name="width" val="4"/>
      <a name="label" val="BCD"/>
      <a name="labelloc" val="east"/>
    </comp>
    <comp lib="3" loc="(300,240)" name="Comparator">
      <a name="width" val="4"/>
      <a name="mode" val="unsigned"/>
    </comp>
    <comp lib="2" loc="(690,240)" name="Multiplexer">
      <a name="width" val="4"/>
      <a name="enable" val="false"/>
    </comp>
    <comp lib="0" loc="(440,160)" name="Pin">
      <a name="tristate" val="false"/>
      <a name="label" val="Cin"/>
    </comp>
    <comp lib="3" loc="(550,460)" name="Adder">
      <a name="width" val="4"/>
    </comp>
    <comp lib="0" loc="(750,420)" name="Pin">
      <a name="facing" val="west"/>
      <a name="output" val="true"/>
      <a name="label" val="Cout"/>
      <a name="labelloc" val="east"/>
    </comp>
    <comp lib="3" loc="(520,230)" name="Adder">
      <a name="width" val="4"/>
    </comp>
    <comp lib="0" loc="(190,250)" name="Constant">
      <a name="width" val="4"/>
      <a name="value" val="0x9"/>
    </comp>
    <comp lib="1" loc="(700,420)" name="OR Gate">
      <a name="size" val="30"/>
      <a name="inputs" val="2"/>
    </comp>
    <comp lib="0" loc="(430,520)" name="Constant">
      <a name="width" val="4"/>
      <a name="value" val="0x0"/>
    </comp>
  </circuit>
  <circuit name="4 BIT BCD">
    <a name="circuit" val="4 BIT BCD"/>
    <a name="clabel" val=""/>
    <a name="clabelup" val="north"/>
    <a name="clabelfont" val="SansSerif plain 12"/>
    <wire from="(270,240)" to="(330,240)"/>
    <wire from="(260,350)" to="(320,350)"/>
    <wire from="(220,270)" to="(280,270)"/>
    <wire from="(220,320)" to="(280,320)"/>
    <wire from="(220,380)" to="(280,380)"/>
    <wire from="(220,220)" to="(280,220)"/>
    <wire from="(270,290)" to="(320,290)"/>
    <wire from="(320,270)" to="(320,290)"/>
    <wire from="(270,240)" to="(270,260)"/>
    <wire from="(270,290)" to="(270,310)"/>
    <wire from="(260,350)" to="(260,370)"/>
    <wire from="(260,190)" to="(260,210)"/>
    <wire from="(330,220)" to="(330,240)"/>
    <wire from="(320,320)" to="(320,350)"/>
    <wire from="(330,380)" to="(330,410)"/>
    <wire from="(310,210)" to="(400,210)"/>
    <wire from="(310,260)" to="(400,260)"/>
    <wire from="(310,310)" to="(400,310)"/>
    <wire from="(310,370)" to="(400,370)"/>
    <wire from="(310,220)" to="(330,220)"/>
    <wire from="(260,370)" to="(280,370)"/>
    <wire from="(310,380)" to="(330,380)"/>
    <wire from="(260,210)" to="(280,210)"/>
    <wire from="(330,410)" to="(350,410)"/>
    <wire from="(310,270)" to="(320,270)"/>
    <wire from="(310,320)" to="(320,320)"/>
    <wire from="(270,260)" to="(280,260)"/>
    <wire from="(270,310)" to="(280,310)"/>
    <wire from="(250,190)" to="(260,190)"/>
    <comp lib="0" loc="(220,270)" name="Pin">
      <a name="width" val="4"/>
      <a name="tristate" val="false"/>
      <a name="label" val="4-7 BIT"/>
    </comp>
    <comp loc="(310,310)" name="BIN TO BCD"/>
    <comp lib="0" loc="(400,370)" name="Pin">
      <a name="facing" val="west"/>
      <a name="output" val="true"/>
      <a name="width" val="4"/>
      <a name="label" val="12-15 BCD"/>
      <a name="labelloc" val="east"/>
    </comp>
    <comp lib="0" loc="(220,380)" name="Pin">
      <a name="width" val="4"/>
      <a name="tristate" val="false"/>
      <a name="label" val="12-15 BIT"/>
    </comp>
    <comp lib="0" loc="(400,210)" name="Pin">
      <a name="facing" val="west"/>
      <a name="output" val="true"/>
      <a name="width" val="4"/>
      <a name="label" val="0-3 BCD"/>
      <a name="labelloc" val="east"/>
    </comp>
    <comp lib="0" loc="(250,190)" name="Pin">
      <a name="tristate" val="false"/>
      <a name="label" val="Cin"/>
    </comp>
    <comp loc="(310,210)" name="BIN TO BCD"/>
    <comp lib="0" loc="(220,320)" name="Pin">
      <a name="width" val="4"/>
      <a name="tristate" val="false"/>
      <a name="label" val="8-11 BIT"/>
    </comp>
    <comp lib="0" loc="(350,410)" name="Pin">
      <a name="facing" val="west"/>
      <a name="output" val="true"/>
      <a name="label" val="Cout"/>
      <a name="labelloc" val="east"/>
    </comp>
    <comp loc="(310,370)" name="BIN TO BCD"/>
    <comp lib="0" loc="(220,220)" name="Pin">
      <a name="width" val="4"/>
      <a name="tristate" val="false"/>
      <a name="label" val="0-3 BIT"/>
    </comp>
    <comp loc="(310,260)" name="BIN TO BCD"/>
    <comp lib="0" loc="(400,260)" name="Pin">
      <a name="facing" val="west"/>
      <a name="output" val="true"/>
      <a name="width" val="4"/>
      <a name="label" val="4-7 BCD"/>
      <a name="labelloc" val="east"/>
    </comp>
    <comp lib="0" loc="(400,310)" name="Pin">
      <a name="facing" val="west"/>
      <a name="output" val="true"/>
      <a name="width" val="4"/>
      <a name="label" val="8-11 BCD"/>
      <a name="labelloc" val="east"/>
    </comp>
  </circuit>
</project>

No comments:

Post a Comment