Compucolor.org – Virtual Media

Listing of file='TUTE2.BAS;01' on disk='vmedia/asmtut_disk1-sector.ccvf'

100 REM  	BINARY LOGIC	TUTE2	22/8/81
110 GOTO 200:REM  150 W/O MENU
120 Z= CALL (0):PLOT 3,0,31,11:RETURN
130 PLOT 3,62,31:POKE KB,0:Z= CALL (18)
131 IF PEEK (KB)= 0THEN 131
132 GOSUB 120:PRINT "/":GOTO 120
133 GOSUB 120:GOTO 120
134 PLOT 6,2,3,0,31:RETURN
140 FOR I= 1TO 1000:NEXT :RETURN
150 POKE 32941,191:POKE 32940,172:CLEAR 100:PLOT 27,4:PRINT "LOA SCROLL.PRG":PLOT 27,27
160 POKE 33283,173:POKE 33284,191
170 PLOT 6,2,15,12,27,24
200 KB= 33278:DU= 49113:POKE DU,255
210 PLOT 14,6,3,3,16,0:PRINT "TUTORIAL #2 - BINARY LOGIC":PLOT 6,2,15,3,0,25
220 PRINT "IN THIS TUTORIAL WE WILL LOOK BRIEFLY AT THE THEORETICAL"
230 PRINT "BASIS FOR THE SWITCHING CIRCUITS THAT, WHEN GROUPED TOGETHER,"
240 PRINT "MAKE UP A MICROPROCESSOR.":GOSUB 134
250 FOR I= 20TO 12STEP - 2:Z= CALL (I):NEXT
260 Z= CALL (18):INPUT "THROUGHOUT, PRESS ENTER TO PROCEED. ";Z:PLOT 28,11:GOSUB 120
270 PRINT "DIGITAL COMPUTERS ARE BASICALLY A COLLECTION OF SWITCHES OR":GOSUB 120
280 PRINT "ELECTRONIC CIRCUITS CALLED GATES WHICH ARE EITHER OPEN OR CLOSED":GOSUB 130
290 PRINT "A UNIFIED SYSTEM OF CONNECTING THESE GATES HAS BEEN ADOPTED":GOSUB 120
300 PRINT "WHICH IS CALLED BOOLEAN ALGEBRA.":GOSUB 130
310 PRINT "THIS SYSTEM ALLOWS SIMPLE DECISION MAKING AND EVEN ARITHMETIC.":GOSUB 130
320 PRINT "THE BASIC ASSUMPTION IS THAT ALL STATEMENTS ARE EITHER":GOSUB 120
330 PRINT "TRUE (1) OR FALSE (0).":GOSUB 130
340 PRINT "THE BASIC OPERATORS IN THIS ALGEBRA ARE SHOWN ABOVE.":GOSUB 120
350 PLOT 3,0,2:PRINT "OPERATORS:":PLOT 6,3
360 PRINT "EQUALS":PRINT "AND":PRINT "OR":PRINT "NOT":GOSUB 134
370 PRINT "ALTHOUGH OTHERS ARE DERIVED FROM THEM SUCH AS:":GOSUB 120
380 PRINT "NAND, NOR, XOR.":GOSUB 130
390 PRINT "EQUALS AND NOT (EQUALS) ARE SELF EVIDENT FOR ANY TWO BITS:":GOSUB 133
400 PRINT "B = A                    B = NOT A":GOSUB 133
410 PRINT "A   B                      A   B":GOSUB 120
420 PRINT "0   0                      0   1":GOSUB 120
430 PRINT "1   1                      1   0":GOSUB 130
440 PRINT "SINCE BOOLEAN ALGEBRA HAS ONLY TWO NUMERICAL VALUES, 0 AND 1,":GOSUB 120
450 PRINT "ANY TWO BITS MAY ONLY OCCUR IN ONE OF FOUR COMBINATIONS:-":GOSUB 133
460 PRINT "0,0  OR  0,1  OR  1,0  OR  1,1":GOSUB 130
470 PLOT 3,16,3:PRINT "A OR B =  ?            A AND B =   ?"
480 PLOT 6,6,3,16,5:PRINT "0    0    0            0     0     0"
490 PLOT 3,16,6:PRINT "0    1    1            0     1     0"
500 PLOT 3,16,7:PRINT "1    0    1            1     0     0"
510 PLOT 3,16,8:PRINT "1    1    1            1     1     1":GOSUB 134
520 PRINT "THE SIMPLE BUT FIXED RULES OF BOOLEAN ALGEBRA GIVE THE RESULTS":GOSUB 120
530 PRINT "OF USING  AND  OR  OR  ON THE FOUR POSSIBLE COMBINATIONS":GOSUB 120
540 PRINT "OF BITS AND THESE ARE REPRESENTED IN TRUTH TABLES.":GOSUB 120
550 PRINT "THESE ARE SHOWN ABOVE.":GOSUB 130
560 PRINT "REMEMBER THE CONVENTION THAT 1 = TRUE AND 0 = FALSE":GOSUB 120
570 PRINT "AND STUDY THESE TRUTH TABLES TO SEE HOW THEY ARE DERIVED.":GOSUB 130
580 PRINT "A FURTHER EXTENSION OF THESE OPERATORS IS THE EXCLUSIVE OR":GOSUB 120
590 PRINT "OPERATOR AND IT DIFFERS FROM OR IN THAT THE RESULT IS ONLY":GOSUB 120
600 PRINT "TRUE IF THE TWO QUANTITIES ARE DIFFERENT.":GOSUB 120
610 PLOT 3,0,10:PRINT "A XOR B =  ?"
620 PLOT 6,6:PRINT "0     0    0"
630 PRINT "0     1    1"
640 PRINT "1     0    1"
650 PRINT "1     1    0":GOSUB 134
660 PRINT "THE TRUTH TABLE FOR XOR APPEARS ABOVE.":GOSUB 130
670 PRINT "A CIRCUIT WHOSE OUTPUT IS EXCLUSIVE OR MAY BE USED FOR EXAMPLE":GOSUB 120
680 PRINT "TO CHECK PARITY IN A SEQUENCE OF BYTES.":GOSUB 130
690 PRINT "PARITY IS A USEFUL ERROR CHECKING METHOD WHEREBY YOU APPEND":GOSUB 120
700 PRINT "AN EXTRA BIT TO EVERY GROUP OF BITS TO INDICATE WHETHER":GOSUB 120
710 PRINT "THE GROUP HAS AN ODD (1) OR EVEN (0) NUMBER OF 1'S.":GOSUB 130
720 PRINT "BY MONITORING FOR PARITY YOU MAY DETECT MOST ERRORS IN":GOSUB 120
730 PRINT "TRANSMISSION OF A GROUP OF BYTES.":GOSUB 120
740 PRINT "PARITY BITS ARE USUALLY ADDED TO EACH BYTE OR NIBBLE.":GOSUB 130
750 PRINT "AN EVEN MORE USEFUL APPLICATION FOR A CIRCUIT WHICH PRODUCES":GOSUB 120
760 PRINT "EXCLUSIVE OR OUTPUT IS AS AN ADDER.":GOSUB 130
770 PRINT "THE TRUTH TABLE FOR EXCLUSIVE OR IS ACTUALLY THE LEAST":GOSUB 120
780 PRINT "SIGNIFICANT DIGIT OF THE RESULT OF ADDING TWO BITS AND":GOSUB 120
790 PRINT "BY ADDING AN AND GATE IN PARALLEL YOU MAY GATHER THE MOST":GOSUB 120
800 PRINT "SIGNIFICANT DIGIT AT IT'S OUTPUT. REMEMBER THAT THE AND":GOSUB 120
810 PRINT "OPERATOR ONLY PRODUCES 1 IF BOTH INPUTS ARE 1 AND THAT THE":GOSUB 120
820 PRINT "ONLY TIME YOU GET CARRY IN BINARY BIT ADDITION IS WHEN":GOSUB 120
830 PRINT "BOTH BITS ARE 1!":GOSUB 130
840 PRINT "BINARY ADDITION WILL USUALLY INVOLVE UP TO THREE BITS THOUGH:":GOSUB 133
850 PRINT "FIRST BIT   PLUS   SECOND BIT   PLUS   MAYBE A CARRY.":GOSUB 130
860 PRINT "THIS REQUIRES TWO OF THE CIRCUITS JUST DESCRIBED PLUS AN":GOSUB 120
870 PRINT "OR GATE SUITABLY CONNECTED.":GOSUB 130
880 PRINT "BY EXTENDING THE COMBINATIONS OF THE VARIOUS GATES WHICH":GOSUB 120
890 PRINT "GIVE THEIR OUTPUTS AS AND, OR, NAND, NOR, EXCLUSIVE OR,":GOSUB 120
900 PRINT "YES, OR NOT WE MAY DESIGN CIRCUITS TO:-":GOSUB 133
910 PRINT "ADD A COUPLE OF BINARY DIGITS OR STRINGS OF THEM,":GOSUB 130
920 PRINT "DECODE BINARY STRINGS TO OTHER NUMBER SYSTEMS,":GOSUB 130
930 PRINT "ENCODE OTHER NUMBER SYSTEMS INTO BINARY,":GOSUB 130
940 PRINT "MULTIPLEX DATA BY SELECTING A SPECIFIC BIT FROM A STRING,":GOSUB 130
950 PRINT "DEMULTIPLEX DATA BY PLACING A SPECIFIC BIT ONTO ONE OF AN":GOSUB 120
960 PRINT "ASSORTMENT OF AVAILABLE OUTPUTS.":GOSUB 130
970 PRINT "YOUR MICROPROCESSOR IS ACTUALLY A COLLECTION OF SUCH CIRCUITS":GOSUB 120
980 PRINT "WHICH EMPLOY COMBINATIONAL LOGIC.":GOSUB 130
990 PRINT "A THOROUGH UNDERSTANDING OF THE EFFECTS OF BIT-WISE COMPARISON":GOSUB 120
1000 PRINT "OF DATA USING BOOLEAN OPERATORS WILL LEAD TO MORE EFFECTIVE":GOSUB 120
1010 PRINT "PROGRAMMING, PARTICULARLY IN ASSEMBLER, BUT ALSO IN BASIC.":GOSUB 130
1020 PRINT "IN THE NEXT TUTORIAL WE WILL LOOK AT THE 'SOFTWARE FACE' OF":GOSUB 120
1030 PRINT "THE 8080A MICROPROCESSOR WHICH IS USED IN THE CCII.":GOSUB 130
1040 PRINT "AS THE HARDWARE IS LARGELY FIXED IN THE CCII, WE WILL NOT":GOSUB 120
1050 PRINT "CONSIDER THOSE PARTS OF THE 8080A WHICH ARE MODIFIED":GOSUB 120
1060 PRINT "BY HARDWARE EXCEPT IN SO FAR AS THEY ARE ALREADY IMPLEMENTED":GOSUB 120
1070 PRINT "IN THE CCII.":GOSUB 130
1080 PRINT "USING ASSEMBLER HOWEVER ALLOWS YOU TO CARRY OUT ALMOST ANY":GOSUB 120
1090 PRINT "OPERATION OF WHICH THE 8080A IS CAPABLE UNLIKE BASIC WHICH":GOSUB 120
1100 PRINT "HAS IT'S FORMAT LARGELY FIXED.":GOSUB 130
1110 GOSUB 2010
1120 INPUT "BACK TO MENU, ON TO TUTORIAL 3, OR TERMINATE? ";YN$:GOSUB 2000:PLOT 12
1130 IF YN$= "B"THEN PLOT 1
1140 IF YN$= "3"THEN LOAD "TUTE3":RUN
1150 PLOT 27,11:END
2000 FOR I= 24TO 8STEP - 2:Z= CALL (I):NEXT
2010 FOR I= 8TO 24STEP 2:Z= CALL (I):NEXT :RETURN