Tag: System Software
System Software – SIC Program to swap the values of ALPHA and BETA
Problem Statement Write a sequence of instructions for SIC to swap the values of ALPHA and BETA. Solution Line Number(ac) Code Description 1 LDA ALPHA Load the value of ALPHA in Accumulator 2 STA GAMMA Store the value of Accumulator to GAMMA 3 LDA BETA Load the value of BETA to Accumulator 4 STA ALPHA Store the value of Accumulator to ALPHA 5 LDA GAMMA…
System Software – SIC/XE program to clear 20 byte string using Immediate addressing mode.
Problem Statement Write a sequence of instructions for SIC/XE to clear a 20-byte string to all blanks. Use immediate addressing and register-to-register instructions to make the process as efficient as possible. Solution Line Number(ac) Code Description 1 LDT #20 2 LDX #0 3 LOOP LDCH #0 4 STCH STR1,X 5 TIXR T 6 JLT LOOP 7 STR1 RESW 20…
System Software – SIC/XE Program to divide BETA by GAMMA and set quotient and remainder
Problem Statement Write a sequence of instructions for SIC/XE to divide BETA by GAMMA, setting ALPHA to the integer portion of the quotient and DELTA to the remainder. Use register-to-register instructions to make the calculation as efficient as possible. Solution Line Number(ac) Code Description 1 LDA BETA Load the value of BETA to accumulator 2 LDS GAMMA Load the value of GAMMA to register S…
System Software – SIC Program to set ALPHA equal to Product of Beta and Gamma
Problem Statement Write a sequence of instructions for SIC to set ALPHA equal to the product of BETA and GAMMA. Assume that ALPHA, BETA, and GAMMA are defined as in Fig. 1.3(a). Solution Line Number(ac) Code Description 1 LDA BETA Load the value of BETA in Accumulator 2 MUL GAMMA Multiply the value of GAMMA with accumulator and the result will be stored in Accumulator…
System Software – SIC/XE Program to set ALPHA=GAMMA*BETA-9 using Register Operation
Problem Statement Write a sequence of instructions for SIC/XE to set ALPHA=GAMMA*BETA-9 using register operation. Solution Line Number(ac) Code Description 1 LDA GAMMA 2 MUL BETA 3 SUB 9 4 STA ALPHA
System Software – SIC/XE Program to divide BETA by GAMMA and set ALHPA to floating quotient
Problem Statement Write a sequence of instructions for SIC/XE to divide BETA by GAMMA, setting ALPHA to the value of the quotient, rounded to the nearest integer. Use register-to-register instructions to make the calculation as efficient as possible. Solution Line Number(ac) Code Description 1 LDF BETA 2 DIVF GAMMA 3 FIX 4 STA ALPHA 5 ALPHA RESW 1 6 BETA…
System Software – SIC/XE Program to set ALPHA equal to 4 * BETA – 9.
Problem Statement Write a sequence of instructions for SIC/XE to set ALPHA equal to 4 * BETA – 9. Assume that ALPHA and BETA are defined as in Fig 1.3(b). Use immediate addressing for the constants. Solution Line Number(ac) Code Description 1 LDA BETA Load the value of BETA in Accumulator 2 LDS #4 Load the value 4 to Register S 3 MULR S,A Multiply…
System Software – SIC/XE Program to Write a subroutine to read a record into a buffer
Problem Statement Write a subroutine for SIC/XE that will read a record into a buffer. The record may be any length from 1 to 100 bytes. The end of record is marked with a “null” character (ASCII code 00). The subroutine should place the length of the record read into a variable named LENGTH. Use immediate addressing and register-to-register instructions to make the process as…