Operation TypesFrom the simplest microprocessor (8-bit) to a largemainframe with an embedded microprocessor, the typesof ALU operations range from basic add and subtractoperations to sophisticated trigonometric operationsand separate coprocessor and math pacs, whichoperate independent of the ALU. The types ofinstructions most ALUs canperform can be divided intotwo categories: arithmetic operationsand logicaloperations. The ALU uses the logical products of thelogic gates to perform the arithmetic and logicalinstructions. Depending on the sophistication of thecomputer, the logic gates are arranged to perform theinstructions included in the computer’s set ofinstructions.Computers can be designed to have an adder toperform its adding and subtracting or a subtracter toperform its adding and subtracting. Or they can have acombined adder/subtracter system. Because acomputer can really only add or subtract, the add andsubtract capabilities allow the computer to perform themore complicated arithmetic operations: multiply,division, and square root functions. Addition andsubtraction functions are embedded in division, squareroot, and the more complicated arithmetic functions,such as trigonometric and hyperbolic, to name a couple.The computer can be designed where a singleinstruction will accomplish the results or a series ofinstructions can be written to produce the results. Theonly drawback to a series of instruction is they consumemore time to accomplish the results. The multiply,divide, square root, and trigonometric instructions areexamples.Computers can multiply by repetitive adding orthey can use a series of left shift instructions both usinga compare instruction, which may be how a computerwith a dedicated multiply function accomplishes thefunction anyway. The same principle can be applied tothe divide and square root functions. A divide can userepetitive subtractions or a series of right shifts with acomparison function.A square root would use acombination of additions/subtractions and comparisonsfor the multiplying and dividing necessary toaccomplish a square root function. A trigonometricfunction using separate instructions would use logicalinstructions to accomplish the same results that a singletrigonometric instruction would accomplish. ALUoperations include signed operations.Depending on the sophistication of the computer,ALU functions can include the following functions:5-23Arithmetic —Add, subtract, shift, multiply,divide, negation, absolute value. (The moresophisticated ALUs can perform square root,trigonometric, hyperbolic, and binary angularmovement or motion (BAM) functions.)Logical—AND, OR, NOT (complement), andEXCLUSIVE OR (compare).Also depending on the design, numeric datacoprocessor and math pacs are used in some computersin addition to the normal arithmetic instructionsavailable. They execute the arithmetic instructions theCPU’s ALU cannot, and they are still controlled by theCPU’s program control. These additional logic circuitscan be used to amplify the capabilities of the ALU andarithmetic section in general. Remember, the ALU ispart of a CPU module or a microprocessor chip on aprinted circuit board. The numeric data coprocessorand math pac are separate modules or chips.NUMERIC DATA COPROCESSOR. —Thenumeric data coprocessor is a special-purposeprogrammable microprocessor designed to perform upto 68 additional arithmetic, trigonometric, exponential,and logarithmic instructions. The coprocessorperforms numeric applications up to 100 times fasterthan the CPU alone and provides handling of thefollowing data types: 16-, 32-, and 64-bit integers; 32-,64-, and 80-bit floating-point real numbers; and up to18-digit binary coded decimal (BCD) operands.The numeric data coprocessor operates in parallelwith and independent of the CPU using the same data,address, and control buses as the CPU. In effect, thecoprocessor executes those arithmetic instructions thatthe CPU’s ALU cannot. The CPU is held in a waitmode, while the coprocessor is performing anoperation. The CPU still controls overall programexecution, while the coprocessor recognizes andexecutes only its own numeric operations.MATH PAC. —Math pac is a module used as ahardware option for some militarized minicomputers.The math pac module provides the hardware capabilityto perform square root, trigonometric and hyperbolicfunctions; floating-point math; double-precisionmultiply and divide instructions; and algebraic left andright quadruple shifts.TOPIC 3—COMPUTER INTERNALBUSESTo transfer information internally, computers usebuses. Buses are groups of conductors that connect the