Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги из ГПНТБ / Бухтияров А.М. Сборник задач по программированию учеб. пособие для студентов высш. техн. учеб. заведений

.pdf
Скачиваний:
16
Добавлен:
24.10.2023
Размер:
10.77 Mб
Скачать

 

 

 

 

 

 

 

Т а б л и ц а

9.13

 

 

Распределение

памяти под

величины

 

 

Адрес

Вели­

ДвончныП

код

Адрес

Вели­

Двоичный

код

 

ячейки

чина

величины

ячейки

чина

величины

 

0100

а

аІЬаи

... Оі

0103

d

00 . . . 0 dsed3b

...

d,

0101

b

ЬіФи

•••

h

0104

f

11111111100 . . . 0

0102

с

C J 5 C 4 4

•••

Сі

0105

k

00000000011 . . .

1

 

127.*

Для

 

ЦВМ

 

БЭСМ-4.

 

При

заданном

 

распределении

памяти (см. табл.

9.13)

составить

команду

вычисления:

 

 

 

а)

значений

величин:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1) a =

t>-j-c,

 

2)

a =

b:c,

3)

a —

Vb,

 

 

 

 

 

4)

а — (использовать

 

команду с кодом операции 06),

 

 

5)

а =

Ь:8

(использовать

команду с кодом операции 46),

 

 

б)

а =

х +

с*)

7)

х=

 

/&*);

 

 

 

 

 

 

 

 

 

 

 

6)

двоичного

кода

 

величин:

 

 

 

 

 

 

 

 

 

 

 

 

1)

a =

ai5au

 

...

av

 

 

где

аіьам

 

... a3i

=

b4bbu ...

b„,

 

амазъ...

...

a1 = {Ь3фзъ

...

bj)-\-

(c3 0 c3 5

...

c^)

(сумма берется

по модулю

2 м ) ,

 

2)

а =

а,

 

 

ах,

где

 

аГааи

 

«37 =

 

(btbbi4

••• Ь;37) -\~ (СІЬС№ '

• • • сз-)

(сумма

берется

по модулю

 

2°) a3Sa3

 

 

 

 

 

 

 

3)

(РА)=

110111111000,

 

 

 

7)

а-

 

 

 

 

 

 

 

4)

(PA)

=

a2ia23 ...

а13,

 

 

 

 

8)

а =

: ^456 44

 

Ь31

11 .

 

 

5)

a =

bi6bu

 

. . .

6 3 7 00 . . .

0,

 

 

9)

а =

00

 

 

о &,ААз.

 

 

6)

а =

00 ... О^зАо

•••

К

 

 

Ю) а = Ь^фф^

... 0,

 

 

 

 

 

 

11)

( / М ) : =

{РА) +

000000000101,"

 

 

 

 

 

 

 

 

 

12)

(РА):

={РА)

000000000011.

 

 

 

 

 

128*. Для

ЦВМ

БЭСМ-4.

 

Составить:

 

 

 

 

 

 

 

 

1)

команду

ввода

значений

величин

в

ячейки

0600,

0601, . . .

 

0705 ОЗУ

машины;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2)

команды записи значений величин, содержащихся

в ячей­

ках 0520,

0521, . . . , 0 6 0 7

ОЗУ

машины

 

на

первый

барабан,

на­

чиная

с ячейки

1005;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3)

команды

считывания

 

значений

величин,

 

содержащихся

в

ячейках

0001, 0002

 

 

 

0300

второго

барабана, в

ОЗУ

ма­

шины,

начиная

с

ячейки 0777;

 

 

 

 

 

 

 

 

 

 

*) А д р е с (х)

с о д е р ж и т с я в р е г и с т р е адреса м а ш и н ы .

 

4)

команды

записи

значений

величин,

содержащихся

в ячей­

ках

3005,

3006,

4004

ОЗУ машины, на

пятую зону

третьего

блока

запоминающего

устройства

на

 

магнитных

лентах;

 

 

 

5)

команды

 

считывания

значения

величины

с первой

зоны

нулевого

блока

 

запоминающего устройства

 

на магнитных

лентах

в ячейки

7500,

 

7501,

 

7771 ОЗУ

 

машины;

 

 

 

 

 

6)

команды

разметки

четвертой

зоны

ленты,

установленной

на

втором блоке

(емкость

зоны

в восьмеричной

системе

счисле­

ния

500

чисел);

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7)

команды

выдачи

на перфокарты

значений

величин,

содер­

жащихся в ячейках 6300, 6301,

 

 

6505 ОЗУ машины;

 

 

 

8)

команды

печати

чисел

десятичной

системе

счисления),

содержащихся

в

ячейках 0030, 0031,

05.11 ОЗУ

машины.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Т а б л и ц а

9.14

 

 

 

 

 

Распределение

памяти

под величины

 

 

 

 

Адрес

Величина

ячейки

 

3302

( Я )

а

3304

(П)

ь

3306

( Я )

с

3310

( Я )

X

3311

( Я )

и

3312

( Я )

z

3313

( Я )

W

3314

( Я )

k

3315

( Я )

т

3316

( Я )

Р

3320

( Я )

г

3322 ( Я )

d

3324

( Я )

f

Форма представления

П л а в а ю щ а я з а п я т а я П л а в а ю щ а я запятая . П л а в а ю щ а я з а п я т а я

Ф и к с и р о в а н н а я з а п я т а я Ф и к с и р о в а н н а я з а п я т а я Ф и к с и р о в а н н а я з а п я т а я

Двоичный код величины

a0ai

...

азв

ЬаЬу

...

Ь30

Coc i

••• С ЗЭ

XQXi

...

х 1 9

УоУі

•••

У и

00 ш а ш 3 ш) 4

00 . . . 0

11100 . . . 0

00 . . . 01111

РаРі

••• Рз9

0011100 . . . 0

d0di ••• d39

0000000

f 7 f 8

. . . f 1 8 0

129*. Для ЦВМ Р. При заданном распределении памяти (см. табл. 9.14) составить последовательность команд вычис­ ления:

а)

значений

величин:

 

 

 

1)

(S)=y,

 

5)

(S): =

(S)-c,

2)

(S): =

(S)-f-z,

6)

a =

(S).,

3)

x =

(S),

7)

х =

( / Х г ,

4)

(S) =

6,

 

8)

a =

c:b,

9)

х — у~Х~о

(адрес

числа v содержится в ячейке 3324 в раз­

рядах

с 7-го по

18-й);

 

 

 

б)

двоичного

кода

величин:

 

 

 

 

 

 

 

1)

х =

 

00 ...

0,

 

 

Ю)

p =

d0 d, 111 d5 d0 ..

d3g>

2)

х =

00 ...

0f/1 6 (/1 7 y1 8 y1 0 ,

 

11)

p =

dB B 60 . . .

0,

 

 

3)

* =

00 BUaay3Du4 00 . . .

0

1111,

12)

p =

00 . . .

0 d 0 ,

 

 

4)

дс =

111 j/зі/, ...

і/и

 

 

13)

p =

do 00 . . .

0 d u

 

5)

л: =

00 ... 0г/ог/,і/„,

 

 

14)

p =

d0 d3 ! )

00

...

0,

 

6)

^ =

УівУі7Ї/і8Уів00 ... 0,

15)

A' =

a0 a1 ...

a1D ,

 

.. 0,

7)

х =

УоУ100 0уъ

•••

у19.

 

16)

а — хйхг ...

x10

00

8)

x =

z0zl6zl7z18zl9

00

...

0,

17)

,v =

00a 2 a 3 a 4 0 0 .. .

о,

9)

р =

00 c U 3 d 4 00

. . .

0,

 

18)

a =

00 w2w3w4

00.. .

0.

 

130*.

Для

ЦВМ

P.

Составить:

 

 

 

 

 

 

 

 

'

1)

команды

считывания

содержимого

15-й зоны запоминаю­

щего устройства на перфоленте в неполные ячейки

1045,

1046,...

 

2007

ОЗУ

в двоичной системе

счисления,

 

 

 

 

 

2)

команды

считывания

содержимого

3-й зоны запоминаю­

щего устройства на перфоленте в полные

ячейки

5026,

5030, . . .

 

7016

ОЗУ

в десятично-двоичной системе счисления,

 

 

3)

команду

выдачи

содержимого

сумматора

на

 

устройство '

печати

в

десятичной

системе

счисления,

 

 

 

 

 

 

 

4)

команду

выдачи

содержимого

сумматора

на

 

перфоленту

в

двоичной системе

счисления,

 

 

 

 

 

 

 

 

 

5)

команды

считывания

содержимого

 

7-й зоны магнитной

ленты

в неполные ячейки 7001, 7002, . . . .

 

7301 ОЗУ,

 

 

 

•6)

команды

записи

содержимого

 

полных

ячеек

ЗОЮ,

3012,...

 

4514

ОЗУ

на 2-ю зону магнитной ленты,

 

 

 

 

 

7)

команды

считывания содержимого неполных ячеек 0600,

0601,...,

0615 ОЗУ с магнитного барабана, начиная с ячейки 004730,

 

8) команды-записи содержимого полных ячеек

1300,

1302,...

 

1512

на магнитный

барабан, начиная

с

ячейки

000002.

 

 

 

 

 

 

 

 

 

 

 

 

Т а б л и ц а 9.15

 

 

 

 

Распределение

памяти

под величины

 

 

 

 

 

Адрес

Величина

 

Форма представления

 

Двоичный код

величины

 

ячейки

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0500

 

а

Ф и к с и р о в а н н а я

з а п я т а я

 

о 0 а !

 

••аза

 

О501

 

Ь

 

і

 

»

 

 

 

 

• •

ь30

 

0502

 

с

 

»

 

Ї

 

С

. ••

с 30

 

0503

 

X

 

П л а в а ю щ а я з а п я т а я

 

 

 

 

••

-v30

 

0504

 

У

 

 

 

 

 

 

!/o!h

••

і/з»

 

0505

 

г

 

 

 

 

 

 

г о г і

• • г 3 «

 

0506

 

w

 

 

 

 

 

 

00

..

011

 

0507

 

k

 

 

 

 

 

 

00

..

01000100

131*.

Для ЦВМ Мииск-22.

 

При

заданном

распределении

па­

мяти (см

табл.

9.15)

 

составить

 

команды,

вычисляющие:

 

 

 

а)

значения

величин:

 

8)

а

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1)

 

а:

 

— Q - j - 6 ,

 

 

 

 

 

=

 

 

\Ь\-\с

 

 

 

 

 

 

 

 

2)

 

а:

 

 

а:Ь,

 

 

 

 

 

9)

х

 

=

 

У X

2 ,

 

 

 

 

 

 

 

 

 

3)

 

х:

 

=

х —

у,

 

 

 

10)

а

 

=

 

( 5 ) + 6,

 

 

 

 

 

 

 

 

4)

 

(S)

= ; а | ,

 

 

 

 

11)

(S)

=

 

А-

: у,

 

 

 

 

 

 

 

 

 

 

5)

 

(S):

=

(S)

+

b,

 

 

12)

х

 

=

 

— У>

 

 

 

 

 

 

 

 

 

6)

 

х

 

 

 

=(S)Xy,

 

 

13)

(S):

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7)

 

(S).=a:b,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

И )

 

Л:

= ( / Х 8

(использовать

команду

сложения

 

порядков),

15)

 

х

 

=у:8

 

 

(использовать

 

команду

вычитания

 

порядков),

16)

 

(S) =т-\-Ь

 

(адрес

числа

т

 

содержится

во

втором

 

адресе

ячейки

0005);

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

б)

двоичный

код

 

величин."

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1) (S)

=

00 . . .

 

0УзьУЗІ,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2)

х

 

=

y0yt ...

y3i

11,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3)

а

=Ьфі . . .

Ь 3 6 000,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

х

=

х0 Х) . . .

х3 4 х3 1 з с ,

 

 

 

 

 

 

 

 

 

П .

е с

л

и

ХІ

=

0,

4)

где л-,-

(і =

35,36) =

{

 

 

 

 

 

 

 

5)

а

йоОООО

 

 

. . . ЬЪ2.

 

 

 

 

 

 

 

 

[0,

ЄСЛИ

Х

І

=

1,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

§ 10. Программирование операторов счета

 

 

 

 

 

 

Под

о п е р а т о р о м

счета

п о н и м а е т с я

о п е р а т о р , в ы ч и с л я ю щ и й

 

з н а ч е н и я

н е к о т о р ы х

ф у н к ц и й . На

 

вид

этих

ф у н к ц и й

ж е с т к и х т р е б о в а н и й

не

 

н а к л а д ы ­

вается . О б ы ч н о

эти

ф у н к ц и и

п р е д с т а в л я ю т с я в

таком виде,

чтобы

 

п р о г р а м ­

м и р о в а н и е

о п е р а т о р а

счета

в

к о м а н д а х

данной

м а ш и н ы

не

в ы з ы в а л о

о с о б ы х

трудностей .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

132*.

Составить

оператор

счета,

 

вычисляющий:

 

 

 

 

 

 

1) *

 

значение

величины

х —

я

y2z-\-z3,

если

 

l ^ i / ^ l O ,

l,5*s£z=s£2;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2) расстояние

d =

 

/ ( х х

— х,)2

- j - [yY

—у..)2

между двумя

 

точками

Ni ( х ь

у І)

 

и

Л/, (х,, у.,) на

плоскости,

если

1 = ^ Х ] ^ 5 ,

 

0 , 5 ^

 

х 2 = ^

==£2,5,

 

3

 

 

 

9

и

2~=s£ г/2=е£б,3;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3) *

 

приближенное

значение

положительного

корня

уравнения

/(х) =

 

0 на отрезке [а, Ь] по способу хорд (см. указание);

 

 

4)

корни

х =

a

i b - t _ - J t ,

 

 

У =

a[b:_a:b\

 

 

(аА

-

a,b, ^

0)

системы

уравнений

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

а{х-{-Ьгу=^си

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

<hx +

Ь.гу =

 

с2,

 

 

 

 

 

 

 

 

 

 

если 2= £ ^ а ь а 2

^ 9 , 7 ;

 

1 ^ 6 j .

 

6 2 =^5;

 

— 6 ^ C j ,

с.2===;0,5;

 

 

 

 

Он

« 1 2

а13

5) определитель Д = а21

й2 2

а2 : , по формуле

«:и

«з2

а331

А =

апа22а33

4- а1 2 о2 ;)а3 і + а.21а32а13

— а13а22а31

— апа23а32

 

— а 1 2 а 2 1 а а з ,

если 1 ==£; а / у - 1 0

для всех

і и /.

 

 

 

 

 

 

У к а з а н и е

к

задаче 3).

П р и б л и ж е н н о е

значение

корня

по

способу

х о р д в ы ч и с л я е т с я по ф о р м у л е

 

 

 

 

 

 

 

 

 

 

 

 

 

< • « * * • > •

 

 

 

где

[а, Ь\ — о т р е з о к ,

на котором

л е ж и т и с к о м ы й

к о р е н ь ; f

(а)

и /

(Ь) — значе ­

ния

функции

fix)

с о о т в е т с т в е н н о в

т о ч к а х а и

Ь. В данной

з а д а ч е

/'(х)—

=x'J — сх- -(- х — d.

133.Составить в командах машины оператор счета, вычисля­

ющий:

-1)

высоту y =

uoyt — qt2/2

снаряда

 

в момент времени /, выпу­

щенного

с

вертикальной составляющей

 

скорости

voy;

 

2) значения

величин

у —У

х.-\-0,2х

 

^ р т и z = y — О . З^ф - j;

3) значение полинома Р (х) = а-6х" -j- агх* -j- й3 г' 4- а2х2

4- 0 \ Х -f- а 0

по формуле

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Р (х) =

((((а-ах 4- о4 ) х 4- ая) х 4- а2 ) * 4- at ) .v 4- а0 ;

4)

приближенное

значение

функции

 

 

 

 

 

 

 

 

 

 

 

 

 

 

х-

 

 

X3

 

 

 

 

 

 

 

 

 

 

е

1 4- х - j - -9Г" -f" -3Г";

 

 

 

5)

приближенное

значение

положительного

корня

уравнения

/(х) =

0

на отрезке'[а,

по способу

 

касательных.

 

У к а з а н

и е.

П р и б л и ж е н н о е

значение

корня

по способу

к а с а т е л ь н ы х

 

 

 

 

 

 

 

 

f

(с)

 

 

 

 

 

 

 

в ы ч и с л я е т с я

по

ф о р м у л е

А- = С — ,, , ( .

 

В

данной

з а д а ч е

 

 

 

 

 

 

 

 

 

/

(с)

 

 

 

 

 

 

 

 

f(x)

= xs

— 2х* +

х — 3;

f'(x)

= 3x!

— 4х + 1;

 

с = Ь =

2,2.

134. Составить в командах машины оператор счета, вычис­

ляющий:

 

 

 

 

F = ^m1mi/r2

 

 

 

 

 

 

 

 

1)

силу

тяготения

между

двумя

материальными

точками с массами іщ и т2,

находящимися друг от друга на рас­

стоянии

г,

если

постоянная

тяготения

т — 6,67 • 10 s ;

3-10e =S

< m j < 4 -

10s ; 3,7- 1 0 ° < / п 2 < 4 , 1

• 10s ; 2,3 • 10і «S r =s£ 6 • 107;

m

 

 

 

 

 

— b ± Vb- 4ac

 

 

 

 

 

 

 

2)

корни

* l

l 2 =

 

 

 

 

 

 

квадратного

уравнения

ax2~\-bx-}-c

=

0,

если

0,5<=a=ss0,7;

2=s£b==s7;

5,01 ^

0,014;

3) приближенное значение функции tg(x) по формуле

 

 

 

 

 

 

t g * = -

 

 

 

 

(0 =

 

.0,5);

 

 

 

 

 

 

 

 

 

 

1 — •

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

D

 

7

 

 

 

 

 

 

 

 

 

4)

значение

функции

у = (6х2

 

х*-\-\)/2\-х-{-0,28х-]-6г*,

если

0,3 < л: <

9,2 и

15<z=ss20 ;

 

 

 

 

 

_

 

 

 

 

5)

объем усеченной

пирамиды

 

V —•• h (F -f- f -f- Y Ff)/3,

 

если

высота

 

пирамиды h и площади оснований F, f

удовлетворяют

неравенствам:

 

5 • 1 0 3

< / г ^ 7

• 10*;

1 0 , 3 - 1 0 3

< f

< 2 2 , 7 - 1 0 »

 

и

3,71 • 102

5,62 • 10:'.

 

 

 

 

 

 

 

 

 

 

 

 

 

135*.

Для

ЦВМ У - 3 . Пусть

 

в табл.

10.1 приведено

распре­

деление

 

памяти

по д величины _х\ у, z, t.

 

Составить в командах

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Т а б л и ц а

10.1

 

 

 

 

 

 

 

Распределение

п а м я т и

под величины

 

 

 

 

 

Величина

Двоичный код

 

Адрес

Величина

 

Двоичный код

Адрео

 

"величины

ячейки

 

величины

ячейки

 

 

X

 

 

Х0Х1

• . . А'зз

 

027

 

 

 

г

 

г 0г 1

••• z38

513

 

 

и

 

 

УоУі

••• Узз

 

512

 

 

 

t

 

*Vi

•••

''эз

514

 

д а н н о й

 

м а ш и н ы

о п е р а т о р

с ч е т а ,

 

в ы ч и с л я ю щ и й

д в о и ч н ы й

к о д

в е л и ч и н :

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1) *

х = у0

 

O J ^ J ) уп&

0 0 ^ 0

 

 

 

 

 

їм;

 

 

 

 

 

 

10 нулей

 

 

19 нулей

 

 

 

 

 

 

 

 

2)

х

 

= 0y0z0t0y1z1t1

...

yl0z10tl0;

 

 

 

 

 

 

 

 

 

 

3)

х

 

= xQxx

. . . A : 3 3 i г д е xt

=

у ч 1

V

г{ =

0,1

32) и х 3 3

= z 3

3 ;

 

 

4)

х

 

= x0xt

...

хаз,

г д е

x 2 i +

l

=

у 2 і Ч і

V

z,, - + 1

и

x2i — y2i Л

t2t

(i =

0,

1, 2,

 

16);

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5) *

-v = .v-0Xi

. . . л - 3 3 , г д е

xi

=

gi/\zi(i

 

= 0y

1,

2,

33

 

и

_ _

|1 ,

 

е с л и

y,. =

0,\

 

 

 

 

 

 

 

 

 

 

 

 

 

^'

 

(0,

 

е с л и

у,- — 1 / '

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6)

x

 

=x0x1

...

x33,

г д е

Х І = У І \ І

( 2 , - Л ^ і )

(г' =

0,

1, 2,

33

и

 

 

(1,

е с л и

z,- =

0\

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

10,

е с л и

г,• =

1 і '

 

 

 

 

 

 

 

 

 

 

 

 

 

 

З

А. М. Бухтняров и др.

 

 

 

 

 

 

 

 

 

 

 

 

136*. Для ЦВМ У-2. Пусть в табл. 10.1 приведено распреде­ ление памяти под величины х, у, z, t. Составить в командах данной

.машины оператор счета, вычисляющий двоичный код величины:

\у-

х = х0х1

... хяз,

где

 

Х21 = Z2i~y2i

и

x2i+1

=

t2t+1

(i = 0,

1,

2,

16);

 

 

 

 

 

 

 

2)

х =

хйхх

. . . х 3 3 , где

Хі —

0

для всех і не

равных

2, 8,

14,

19;

ХГ = =

УІ> Х $

УЗ> ХИ

— УГІ

 

 

3) х = х0х1

. . . * 3 3 ,

^

 

f l ,

если

Уі =

0,

=

о

 

у І =

і

 

10,

если

1

 

 

4) ,v = .vvv, . . . A-gg,

ХИ

— УЪ

 

(J' = 0, 1, 2

 

где

xi==gi\J{zif\ti)

33;

-

f l ,

если /,- =

0,\

 

1 1 І і

= \п10,

если , tt =

і 1 /;

 

где

 

ХІ =

iji^DZt

для

t ' = l ,

 

2,

 

10,

 

 

 

 

г/,Дг,

для

г =

0,

11, 12

 

33;

 

 

 

 

 

5)* х = х0х1

. . .

A

- 3 3 , где

 

 

 

 

 

 

 

 

 

 

 

 

0

для

t =

0,

1,

2,

3,

10,

11,

 

33,

 

 

у,-+ 3

для

i =

4,

5,

6,

 

 

 

 

 

 

 

 

Z ; + c

для

і =

7,

8,

9.

 

 

 

 

 

 

137*.

Для ЦВМ

 

У-1.

Пусть

в табл.

10.2

приведено

распре­

деление

памяти

под

величины

х,

у,

z,

t.

Составить

в

командах

 

 

 

 

 

 

 

 

 

 

 

 

Т а б л и ц а 10.2

 

 

Распределение п а м я т и

под

величины

 

 

 

Величина

Двоичный

код

Адрес

 

Величина

 

Двоичный

код

Адрес

величины

 

ячейки

 

 

величины

 

ячейки

 

 

 

 

 

 

 

 

X

A'Q.VJ

. . .

А ' 2

0

613

 

 

г

 

Z0 Zj ...

Zjo

 

573

У

УаУі

...-too

574

 

 

t

 

 

'о'і •••

ha

 

572

данной машины оператор счета, вычисляющий двоичный код величины:

1) * х =

х0х1

. . .

х 2 о ,

где

 

 

 

 

 

 

 

 

 

 

[

гї 0

для

і =

0,

1,

2,

. . . . 5,

 

 

 

xt =

\

0

для

і =

6,

7,

 

15,

 

 

 

 

| УІ-П

Для

/ =

16, 17,

20;

 

2) x =

xQXt

. . . ХІ0,

где

 

 

 

 

 

 

 

 

_

(

0

для

/ =

0,

1,

3,

5,

7

19, '

 

Xl~~

ViA*t-i

Д л я

1 =

2,

4,

6

 

20;

 

3) X=X0Xi . . . x i 0 , где

ХІ

0

для

1 =

 

0,

1,

2,

4,

5,

7,

8,

10,

11,

13,

14, 16,

17,

19,

20,

І / £ _ і V д л я

Z =

 

3,

6,

9, 12,

15,

18;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4) *

X =

.V0A-lX2 . . .

xi0,

 

где

 

 

 

 

 

 

 

 

"

 

 

 

ч

 

 

 

Хг-

 

0

для £' =

0,

1,

2,

3,

4,

5,

16,

17, ... ,

20,

 

 

 

 

 

 

 

 

 

 

 

+ І

Л л

 

t =

6,

7,

8, ... ,

15.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

я

 

 

 

 

 

138*.

Для ЦВМ

 

БЭСМ-4.

Составить

в командах

данной

ма­

шины

оператор

 

счета,

вычисляющий:

 

 

 

 

 

 

 

 

 

 

1) значения

 

величин:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

а) * / С = 1

 

R2

 

(vtiy.y-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

L 3 ( v , / v a + i ) »

 

 

 

 

 

 

 

 

 

 

 

 

б)

У =

 

 

 

 

 

X

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(2-v)2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

|

7

 

А-)2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

J

T

+

(4А-)2

 

 

 

 

 

 

 

 

 

 

 

 

 

2) *

содержимое

регистра

адреса

(РА)

= а-\- Ь, если

а

и

ь —

целые положительные числа, хранящиеся соответственно

в

ячейках

a - j - 15 и а -}- 20,

в

форме с

плавающей

запятой;

у == а /\(Ь\/

а),

 

3) таблицу истинности булевского выражения

если значения

переменных

a n t

 

заданы содержимыми

 

4fkx

раз­

рядов соответственно ячеек а и Р; значение

логической

перемен­

ной у представить содержимым 45-го разряда ячейки

т

(значение

«истина»

логических

переменных

a,

b

и у

 

представить

единицей,

а

значение

«ложь» •— нулем);

 

 

 

 

 

Q 0 X O 8 0 ,

 

 

 

 

 

 

4) двоичный код у .=

za0-zi400

. . . 0 A : 3

если

распреде­

ление

памяти

под

величины

приведено

в

табл.

10,3,

 

а адрес

(х)

содержится

 

в регистре

адреса

машины.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Т а б л и ц а

10.3

 

 

 

 

 

 

 

 

 

 

 

Распределение

п а м я т и

под

величины

 

 

 

 

 

 

 

 

 

 

 

Величина

Двоичный код В ЄЛ11-

 

Адрес

 

 

 

 

 

 

 

 

 

 

 

 

 

 

чины

 

 

ячейки

 

 

 

 

 

 

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

У

 

 

 

УиУи

•••

Уі

 

а + 2

 

 

 

 

 

 

 

 

 

 

 

 

 

г

 

 

 

г

и г

и

•••

 

 

 

ь +

з

 

 

 

 

 

139*. Для ЦВМ Минск-22. Составить в командах данной ма­ шины оператор счета, вычисляющий:

1)* приближенное значение функции

 

 

In (2 + 0 ) ^ 0 , 6 9 3 1 4 7 + 2 .4 + а 1 3 ( 4 + в ) 3 1

 

а"

 

 

 

 

 

 

5 (4 + а ) 6

 

 

 

для 0sgasg0, 3

(использовать

только

команды

арифметических

операций

над числами

с фиксированной

 

запятой);

 

 

 

 

 

 

 

2)

площадь

S = ~

[

(xL

 

А \ , ) ( у ,

у2) +

2 — хь){у2

 

у 3 )

+

+

(.v., — л'і)(і/з—УІ ) ]

1 треугольника

с вершинами Р Х (xv

уг),

Р 2

(х.г,

у2)

и

Р я

3, уз);

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

а,

Ь,

с,

 

3)

алгебраическую

сумму

 

ненормализованных

чисел

представленных

в форме

с

плавающей

запятой;

 

 

 

 

 

 

 

4) * двоичный код х =

00 ух

ООО у2 0000 у 3

00000 ух

000000 у в 00.. .0.

Двоичный

код у =

у0уі-.-Узь

содержится

 

в

ячейке

а.

 

 

 

 

 

 

140*.

Для

ЦВМ

Р . Составить

в кодах

команд

данной

ма­

шины

оператор

счета,

вычисляющий:

 

 

 

 

 

 

 

 

 

 

 

1)* приближенное значение

функции

 

 

 

 

 

 

 

 

 

 

 

 

 

 

cos А'

1

 

V 3

 

V І

 

V Е

 

 

0 < л : < 5 ;

 

 

 

 

 

 

 

 

 

 

 

 

(- +

 

gj-

 

 

 

 

 

 

 

 

2)

объем

усеченного

 

прямого

конуса

V =

rJi (R2 + /-2

+

 

Rr)/3,

если

заданы

значения

 

величин:

h — высота

усеченного

конуса

(0<;ft==Sl0),

R— площадь

нижнего

основания ( 0 < ; R = ^ 1 0 ) ,

г—

площадь

верхнего

основания

 

( 0 = ^ л ^ 3 ) ;

 

 

 

 

 

 

 

 

 

3) * значение величины А =

 

(В + С — D) Е, если величины

 

B,C,D

и

Е

принимают

комплексные

 

значения;

 

 

 

 

 

 

 

 

 

 

 

4)

двоичный

код

х — у 0

у І у, zyx

ys . . .узь

где

z = (у„ +

у , +

-\-уя)

mod 2. Двоичный код величины

у =

у0 у\ у* .-Уз*

размещается

в

полной

ячейке к + 1 .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

§11. Программирование логических операторов

П о д л о г и ч е с к и м о п е р а т о р о м п о н и м а е т с я о п е р а т о р , п р о в е р я ю щ и й н е к о т о ­ р ы е у с л о в и я и о п р е д е л я ю щ и й д а л ь н е й ш е е н а п р а в л е н и е в ы ч и с л е н и й в з а в и с и ­ мости от в ы п о л н е н и я или н е в ы п о л н е н и я этих условий . На вид этих у с л о в и й ж е с т к и е т р е б о в а н и я не н а к л а д ы в а ю т с я . О д н а к о , ка к п р а в и л о , их п р е д с т а в л я ю т

в т а к о м . в и д е , чтобы

п р о г р а м м и р о в а н и е л о г и ч е с к о г о о п е р а т о р а

в к о м а н д а х

данной м а ш и н ы не

 

в ы з ы в а л о

особых т р у д н о с т е й .

О б ы ч н о

в к а ч е с т в е

логических у с л о в и й

и с п о л ь з у ю т с я о т н о ш е н и я

(а > b,

a ^ b ,

a<.b,

а^Ь,

141*. Составить

операторную

схему

программы и

программу

вычисления

величины

 

 

 

 

 

 

I а +

2/Ь + 4,

если

а^>Ь,

,

 

 

 

 

I (а + £)-,

если a = s ^ £ ,

142.

Пусть заданы три

числа Nlt

N.2

и i\r3.

Известно

что

два

из них равны между собой, а третье отличное от них.

 

 

Составить блок-схему

программы и программу вычисления зна­

чения

величины

N =

Nh

где /V,- — одно из заданных

чисел, отлич­

ное от двух других.

 

 

 

 

 

 

 

 

 

143.

Пусть задана последовательность четырех чисел Nv

N2,

Составить операторную схему программы и программу,

кото-*

рая

определяла

бы

количество

положительных

и количество

(1Г„)

отрицательных чисел, содержащихся

в этой последовательности.

144.

Составить блок-схему программы и программу вычис­

ления

значения

величины

z — \x\

— \у\,

не

используя

команд,

выполняющих поразрядные логические операции и операцию вы­

читания

модулей.

 

 

 

 

 

 

 

 

 

145*.

Пусть в

ячейке а памяти машины

содержится

некото­

рый двоичный

код.

 

 

 

 

 

 

 

 

Составить

операторную

схему программы и программу, кото­

рая меняла бы местами содержимое 7-го и 10-го

разрядов кода (т.),

если в 5-м разряде этого

кода содержится

1,

и

ничего

бы не

делала, если в 5-м разряде этого кода содержится

0.

 

 

146*.

Для

трехадресных

 

ЦВМ.

Пусть

в

ячейке

а.

памяти

машины содержится некоторая ее команда.

 

 

 

 

 

Составить

блок-схему

программы

и программу

вычисления

значений

величин

Nv N2

и

N3:

 

 

 

 

 

 

 

если

первый

и

второй

адреса

 

команды

(а)

равны

 

между

собой,

 

 

 

 

 

 

 

 

 

если

первый

и

третий

адреса

команды

(?.)

равны

 

между

собой,

 

 

 

 

 

 

 

 

О, 1, если второй и третий адреса команды (а) равны

между собой,

N3 1,

попарно равны между

О,

No О, если в команде (а) нет равных между собой

адресов.

О,

Соседние файлы в папке книги из ГПНТБ