(1)
The double length numbers x, y, z, X, Y, are held in locations 50, 60, 70, 10, 12, respectively.
(a) Form z - (z/x)y + z/X + z/Y
(b) Form |x| + |y| + |z| in the accumulator.
(2)
Two 3×3 matrices A and B are stored in the following ways:
A B 1st row vector is stored in 10 11 12 40 41 42 2nd row vector is stored in 20 21 22 50 51 52 3rd row vector is stored in 30 31 32 60 61 62
Replace matrix A by matrix A + B.
(3)
The complex numbers A and B are stored as follows:
A = u + iv is stored in 50: B = x + iy is stored in 60:
The complex accumulator is taken as 70:
(a) Form A(B)1/2 in the complex accumulator
(b) Form (1/B) + exp. A in 50:
(4)
Write a routine to do the following in the order given:
(a) Read 160 characters from input 5 into the least significant 6 bits of halfwords starting at location 10.
(b) Pack these characters in order into full words starting at location 100.
(c) Copy the first two characters of each word, separately in order, into B registers B1 to B40.
(5)
A list of 10 numbers is held in store locations 20 onwards. Using extracode 1436 find the standard deviation of these numbers, leaving the result in the accumulator.
(6)
(a) Write a routine R3 to shift the logical accumulator circularly to the left by n character positions. Assume that n is stored in B79 upon entry and use B80 for the link.
(b) Working in the logical accumulator arrange that the floating point number in location 500 has a zero mantissa sign bit.
(1a)
(1b)
(2)
(3a)
(3b)
(4a)
(4b)
(4c)
(5)
(6a)
(6b)