Справочник по системным программам 1969 г.

Язык программирования Бейсик - использование машинных кодов, полный набор символов.


Использование машинных кодов

Краткое содержание: USR с числовым аргументом.

Эта глава описывает применение машинных команд микропроцессора Z*0 [ I'SSO
(ГДР). 18 I0ВМ80 (СССР) ].

Программы в машинных кодах пишут обычно на ассемблере с последующей трансля-
цией. Транслятор с ассемблера встроен в компьютер ZX SPECTRUM.

Приведем пример программа):
ID ВС,99
RET

Которая загружает в "ВС" регистр число 99. Эта программа будет транслировать-
ся в 4-х байтный машинный код:

Байты I. 99. О для ID ВС,99 и
201 для RET

Следующим шагом является загрузка программы в компьютер.Для этого использует-
ся дополнительная память, получаемая между бейсик-областью и областью опреде-
ляемых пользователем символов. Допустим, вы имели следующее распределение пос-
ледней части ОЗУ:

32500 UDG=32600 PRAMT-32767

32500 UDG=32600 PRAMT-32767

RAMT0P=32499

Для загрузки программы в машинных кодах вы можете выполнить следующую бейсик-
программу.

10 LET А-32500
20 READ N: РОКЕ А,N
30 LET А-А+1: GOTO 20
40 DATA 1,99.0,201

(программа может завершиться с сообщением 'Е OUT OF DATA'.

Для выполнения загруженных машинных кодов используется функция USR,ho с чис-
ловым аргументом, определяющим начальный адрес.

Если вы выполните: PRINT USR 32500, то получите ответ: 99

Возврат в бейсик-программу осуществляется обычным образом по команде микроп-
роцессора RET. В машинной программе вы не должны использовать регистры IY и I.

Вы можете записать вашу программу на ленту: SAVE "NAME" CODE 32500,4.

Можно записать эту программу и так, го она будет автоматически выполняться
после загрузки:

10 LOAD " " CODE 32500,4
20 PRINT USR 32500

для чего надо сделать:
SAVE NAME LINE

а затем:

SAVE "ХХХХ" CODE 32500,4
LOAD "NAME"

Это приведет к тому, что вначале будет загружена и автоматически выполнена
бейсик-программа, которая, в свою очередь, загрузит и выполнит программу в ма-
шинных кодах. Книга "Искусство схемотехники" П.Хоровиц. У.Хилл МИР. 1986,том

2,стр.579-580.

Далее приводятся 78 команд микропроцессора 8085, совместимых с микропроцес-
сором Z80 (158 команд)./и880-ГДР,К181ОВМ-СССР/

мнемоника:

действие

к о

п

: циклы

ar stats

SS3S.SSS = = = « =

1

2

3

4

п

e p

ссылка, з а г p уз к a ,

з а п

и с ь

M0V

R.R

переслать регистр в регистр

' 01RR

RRRR

4 [ 7 }

MVI

R, D

переслать иепоср.в регистр

OORR

R1 10

71101

LXI

RP.DD

загрузить иепоср.в два per.

00PP

0001

10

STAX

В

запомнить А косвенно по ВС

0000

0010

7

STAX

D

запомнить А косвенно по DE"

0001

0010

7

LDAX

В

загрузить А косвенно по ВС

0000

1010

7

LDAX

D

'загрузить А косвенно по DE

0001

1010

7

STA

DD

запомнить А по адресу DD

001 1

0010

13

LDA

DD

загрузить А по адресу DD

001 1

1010

13

SHLD

DD

запомнить H.L по адресу DD

0010

0010

16

LHLD

DD

загрузить H.L по адресу DD

0010

1010

16

XCHG

обменять DE и HL

- 1 1 1 0

1011

4

n

P

нращение и уменьшен!

к е

INR

R

приращение регистра

! 00RR

RI00

41 1 I 1

DCR

R

уменьшение регистра

00RR

R101

411 IJ

I NX

RP

приращение пары регистров

1 00PP

001 1

6

DCX

RP

уменьшение пары регистров

| 00PP

1011

6

а

P и

Ф

метнческие и л о г и ч е

с к и

е

ADD

R

прибавить регистр к А

1000

0RRR

4 [ 7 ]

ADC

R

прибавить per к А с переносом

1000

1RRR

4 [ 7 ]

SUB

R

вычесть регистр из А

1001

0RRR

4 [ 7 ]

SBB

R

вычесть с заемом

1001

IRRR

4 [ 7 ]

ANA

R

регистр & А

1010

0RRR

4 [ 7 ]

XRA

R

искл.или регистра и А

1010

1RRR

417]

ORA

R

регистр ! А

101 1

0RRR

4 [ 7 ]

CMA

R

сравнить регистр и А

101 1

1RRR

4 [ 7 ]

ADI

D

прибавить непоср.данные к А

1 100

0110

7

AC 1

D

прибавить непоср.с переносом

J 100

1110

7

SUI

D

вычесть непоср. из А

1 101

01 10

7

SB I

D

вычесть непоср.с займом

1101

И 10

7

ANI

D

непоср. & А

1110

01 10

7

XRI

D

искл.или непоср. и А

1 1 10

1110

7

OR 1

D

непоср. ! А

1111

0? 10

7

CPI

D

сравнить непоср. с А

1111

1110

7

DAD

RP

прибавить пару регистров к HL

00PP

1001

1 1

0 n

e p

a

ц.с накопителями

и ф

л а 1

г а м и

RLC

сдвинуть А влево

0000

0111

4

RRC

сдвинуть А вправо

0000

1111

4

RAL

сдвинуть'А влево чер.разр.пер

0001

0111

4

RAR

сдвинуть А вправо чр.разр.пер

0001

11 1 1

4

DAA

десятич.коррекция накопителя

0010

01 1 1

4

CMA

дополнение к накопителю

0010

1111

4

STC

установить бит переноса

001 1

0111

4

CMC

обратить бит переноса

001 1

1111

4 1

_________________________—_______

-------

------

I/O, у

правление и операци

и со

с T

e к о м |

_ 1

IN

D

ввод из порта D

110 i

ion

1 G i

OUT

D

вывод в порт D

1 101

001 1

И !

EI

разрешение прерываний

nil

101!

4 i

DI

запрещение прерываний

1111

001 i

4 1

NOP

нет операции

0000

eooo

4 ;

HLT

останов

on 1

0110

4 !

PUSH

RP

занести пару регистров в стек

Прр

0101

11

POP

RP

взять пару регистров из стека

11 pp

0001

1 0

XTHL

обменять HL с верхом стека

1110

001 r

п e

редачн управлен

и я

JMP

DD

безусловный переход

1 100

001 1

! 0

JCC

DD

перейти по условию СС

11 СС

C010

10

CALL

DD

безусловный вызов

1 100

1 101

17

CCC

DD

вызов по условию СС

1 ICC

C100

17(10)

RET

возврат после вызова

1 100

1001

10

RCC

возврат по условию СС

1 ICC

cooa

11(15)!

RST

N

возобновление в ячейке 8*N

I INN

N111

II J

PCHL

переслать HL в PC

1110

1001

4 . 1

Обозначения :
Поля данных

D - один байт непоср.данных (длина команды 2 байта)

0D - двухбайтовый адрес (длина команды 3 байта). Все остальные команды имеют
длину 1 байт.

Циклы

N - число тактов, нужное для выполнения команды.
[N] ~ число тактов, когда R»M (доступ в память).
(N) - число тактов, еслй условие не выполнено.

Поля регистров

D) коды услов

D) коды услов

Полный набор символов

Полный набор символов

дес.
код

Символ

шести.
код

Ассемблер,
мнемоника

CBH...

EDH... v |

1

s

0

не использ.

Q0

NOP

RLC В

i
i

1

не использ.

01

LD ВС.NN

RLC С

1

2

не использ.

02

LD (ВС).A

RLC D

1

3

не использ.

03

INC ВС

RLC E

4

не использ.

04

INC В

RLC H

5

не использ.

05

DEC В

RLC L

6

PRINT упр.

06

LD B.N

RLC(HL)

7

EDIT

07

RLCA

RLC A

8

курс.влево

08

EX AF.AF'

RRC В

9

курс.вправо

09

ADD HL.BC

RRC С

10

курс.вниз

OA

LD А.(ВС)

RRC D

1 1

курс.вверх

OB

DEC ВС

RRC E

12

DELETE

ОС

INC С

RRC H

13

ENTER

0D

DEC С

RRC L

i

14

чнсло

ОЕ

LD C.H

RRC (HL)

15

не использ.

OF

RRCA

RRC A

16

INC упр.

10

DJNZ D1S

RL В

17

PAPER упр.

1 1

LD DE.NN

RL С

18

FLASH упр.

12

LD (DE).A

RL D

19

BRIGHT упр.

13

INC DE

RL E

20

INVERSE упр

1 4

INC D

RL H

21

OVER упр.

15

DEC D

RL L

22

AT упр.

16

LD D.N

RL (HL)

23

TAB упр.

17

RLA

RL A

24

не использ.

18

JR DIS

RR В

25

не использ.

19

ADD HL.DE

RR С

26

не использ.

LD A.(DE)

RR D

27

не использ.

DEC DE

RR E

28

не использ.

INC E

RR H

29

не использ.

ID

DEC E

RR L

30

не использ.

IE

LD E.N

RR (HL)

31

не использ.

IF

RRA

RR A

32

пробел

20

JR NZ,DIS

SLA В

33

j

21

LD HL.NN

SLA С

34

22

LD ,(NN) . HL

SLA D

35

#

23

INC HL

SLA E

37

%

25

DEC H

SLA L

38

&

26

LD H, N

SLA (HL)

39

'

27

DAA

SLA A

40

(

28

JR Z.DIS

SRA В

41

)

29

ADD HL,HL

. SRA С

42

*

2A

LD HL.NN

SRA D

43

+

2B

DEC HL

SRA E

44

2C

INC L

SRA H

45

-

2D

DEC L

SRA L

46

рррррррррр

2E

LD L.N

SRA (HL)

47

/

2F

CPL

SRA A

49

1

31

LD SP.NN

50

2 •

32

LD (NN).A

51

3

33

INC SP

52

4

34

INC (HL)

53

5

35

DEC (HL) '

54

6

36

LD (HL),N

55

7

37

SCF

56

8

38

JR C.D1S

SRL В

5?

9

39

ADD HL.SP

SRL

с

I

58

ЗА

LD

A.

(NN)

SRL

D

59

;

3B

DEC SP

SRL

E

60

<

3C

INC A

SRL

H

61

«

3D

DEC A

SRL

L

62

>

3E

LD

A.

N

SRL

(HL)

63

?

3F

CCF

SRL

A

64

40

LD

В

В

BIT

0, в

IN В.(С)

65

А

41

LD

В

с

BIT

0.C

OUT (С).В

66

В

42

LD

В

D

BIT

0. D

SBC HL,ВС

67

С

43

LD

в

E

BIT

0, E

LD (NN).BC

68

D

44

LD

в

H

BIT

0. H

NEG

69

Е

45

LD

в

L

BIT

0, L

RETN

70

F

46

LD

в

(HL)

BIT

0,{HL)

IM, 0

71

G

47

LD

в

A

BIT

0. A

LD L, A

72

Н

48

LD

с

В

BIT

l.B

IN С.(C)

73

1

49

LD

с

BIT

I . с

С1П C,(C)

74

J

4A

LD

с

D

BIT

1 . D

ADD HL.ВС

75

К

4B

LD

с

E

BIT

1 , E |

LD ВС,(NN)

76

L

4C

LD

с

H

BIT

1 . H |

77

ч

4D

LD

с

L

BIT

1 , L

SET 1

78

N

4E

LD

с

(HL)

BIT

I.(HL)|

79

0

4F

LD

с

A

BIT

1 .A

LD R, A

80

Р

50

LD

D

В

BIT

2. В

IN D.(C)

81

Q

51

LD

D

C

BIT

2.С

OUT D.(C)

82

R

52

LD

D

D

BIT

2. D

SBC HL.DE

8 Л

S

53

LD

D

E

BIT

2. E

LD (NN).DE

84

Т

54

LD

D

H

BIT

2, H

85

и

55

LD

D

L

BIT

2, L

86

V

56

LD

D

(HL)

BIT

2,(HL)

IM 1

87

w 4

57

LD

D

A

BIT

2, A

LD A. L

88

X

58

LD

Е

В

BIT

3.B

IN E.(C)

89

Y

59

LD

Е

BIT

3.C

OUT (C).E

90

Z

5A

LD

Е

D

BIT

3, D

ADC HL.DE

91

[

5B

LD

Е

E

BIT

3. E

LD DE.(NN)

92

/

5C

LD

Е

H

BIT

3, H

93

3

5D

LD

Е

L

BIT

3. L

94

стрелка вврх

5E

LD

Е

(HL)

BIT

3.(HL)

IM 2

95

5F

LD

Е

A

BIT

3, A

LD A. R

96

фунт-стерл.

60

LD

Н

В

BIT

4. В

IN H.(C)

97

а

61

LD

Н

C

BIT

4.C

OUT (O.H

98

Ь

62

LD

Н

D ;

BIT

4, D

SBC HL.HL

99

с

63

LD

Н

E j

BIT

4. E

LD (NN).HL

100

d

64

LD

Н

H j

BIT

4, H

101

е

65

LD

Н

L !

BIT

4. L

102

f

66

LD

Н

(HL)

BIT

4,(HL)

303

g

67

LD

Н

A

BIT

4. A

RRD

104

h

68

LD

L

В

BIT

5. В

IN L,(C)

105

1

69

LD

L

C

BIT

5.С

OUT (С).L

106

j

6A

LD

L

D

BIT

5. D

ADC HL.HL

' 07

к

6B

LD

L

E

BIT

5. E

LD HL.(NN)j

108

1

6C

LD

L

H

BIT

5. H

109

m

6D

LD

L

L

BIT

5. L

110

n

6E

LD

L

(HL)

BIT

5.(HL)

1 1 1

0

6F

LD

L

A

BIT

5. A

RID

112

P

70

LD

(HL),В

BIT

6.В

IN F.(C)

ИЗ

q

71

LD

(HL),С

BIT

6,С

114

r

72

LD

(HL).D

BIT

6.D

sbc HL.SP

115

s

73

LD

<HL),E

BIT

6. E

LD (NN).SP

116

t

74

LD

(HL).Н

BIT

6. H

117

u

75

LD

(HL),L

BIT

6. L

118

v

76

HALT

BIT

6.(HL)

119

w

77

LD (HL).A

BIT

в.А | |

120

X

78

LD А.В

BIT

7.8 ;

! 1 N A. < С ) !

121

У

79

LD А. С

BIT

7. С |

i Qij Г (С) . A 1

122

z

LD A, D

BI Г

7, D

ABC HL.SP j

123

фигур.ск.лев

LD А, Е

BIT

7. E

Llr SP. ( NN ) j

124

веру.черта

LD А. Н

BIT

7. H

125

фигур.ск.пр.

70

LD A.L

BIT

7. L

i

126

дефис

LD A.(HL)

BIT

7, H

127

С в окр.

7F

LD А.А

BIT

7, A

128

о о

80

ADD А.В

RES

0r В

i
1

129

о ж

81

ADD А.С

RES

0. С

1
!

1

130

о о
ж О

82

ADD A.D

RES.

0. D

i

- !

131

Ж О

83

ADO А.Е

RES

0. E

О О

132

О О

84

ADD А,Н

RES

0. H

133

о ж

85 .

АШ> A.L

RES

0, L

О ж

134

Ж О

86

ADD A,(HL)

RES

0.(HL>

О Ж

135

ж ж

87

ADD А.А

RES

0. A

О ж

136

О О

88

ADC А!В

RES

l.B

137

в ж

89

ADC А.С

RES

1 . c

Ж О

138

ж о

ADC A,D

RES

L-.D

ж о

139

ж ж

. 8В

ADC А.€

RES

1. E

ж о

1 40

ж ж

ADC А,Н

RES

I , H

141

О ж

8D

ADC A.L

RES

1 . L

ж ж

142

ж о

8Е.

ADC A,(HL)

RES

1.(HL)

ж ж

143

ж ж

8F

ADC А.А

RES

1 .A

ж ж

144

(А)

90

SUB В

RES

2. В

145

(в)

91

SUB С

RES

2.С

146

(С)

92

SUB D

RES

2. D

147

(D)

93

SUB Е

RES

2, E

148

(Е)

94

. SUB н

RES

2. H

14Э

(F)

95

SUB L

RES

2. L

150

(G)

96

SUB (HL)

RES

2.(HL)

151

(Н)

97

SUB A

RES

2. A

152

(I)

98

SBC А.В

RES

3.B

| 153

(J)

99

SBC А.С

RES

3.C

154

(К)

SBC A.D

RES,

3. D

135

(L)

SBC A,E

RES

3. E

156

SBC A,H

RES

3. H

157

(N)

90

SBC A.L

RES

3.C

158

(0)

SBC A.(HL)

RES

3. D

159

(Р)

9F

SBC A.A

RES

3. E

160

«0

АО,

AND В

RES

4.В

LD I

161

(R)

AI

AND С

RES

4, С

CP I

162

(S)

А2

AND D

RES

4, D

INI

163

(Т)

A3

AND E

RES

4. E

OUTI

164

<и)

А4

ANCi H

RES

4. H

165

RND

А5

AND L

RES

4.L |

166

INKEYf

A6

AND (HL)

RES

4

(HL)

1

167

PI

A7

AND A

RES

4

A

168

FN

A8

XOR В

RES

5

В

LDD

169

POINT

A9

XOR С

RES

5

С

CPD

170

SCREENS

AA

XOR D

RES

5

D

I ND

171

ATTR

AB

XOR E

RES

5

E

OI.TD

172

AT

AC

XOR H

RES

5

H

173

TAB

AD

XOR L

RES

5

L

174

VALt

AE

XOR (HL)

RES

5

(HL)

175

CODE

AF

XOR A

RES

5

A

176

VAL

BO

OR В

RES

6

В

LD 1 R

177

LEN

B1

OR С

RES

6

С

CP 1 R

178

SIN

B2

OR D

RES

6

D

INIR

179

COS

B3

OR E

RES

6

E

ОТ !R

180

TAN

B4

OR H

RES

6

H

181

ASN

B5

OR L

RES

,6

L

182

ACS

B6

OR (HL)

RES

6

(HL)

183

ATN

B7

OR A

RES

6

A

184

LN

B8

CP В

RES

7

В

LDDR

185

EXP

B9

CP С

RES

7

С

CPDR

186

INT

BA

CP D

RES

7

D

I NDR

187

SQR

BB

CP E

RES

7

E

OTDR

188

SGN

ВС

CP H

RES

7

H

189

ABS

BD

CP L

RES

7

L

190

PEEK

BE

CP (HL)

RES

7

(HL)

191

IN

BF

CP A

RES

7

A

192

USR

CO

RET NZ

SET

0

В

193

STRS

CI

POP ВС

SET

0

С

194

CHRS

C2

JP NZ,NN

SET

0

D

195

NOT

C3

JP NN

SET

0

E

196

BIN

C4

CALL NZ.NN

SET

0

H

197

OR

C5

PUSH ВС

SET

0

L

198

AND

C6

ADD A.N

SET

0

(HL)

199

C7

RST 0

SET

0

A

200

C8

RET Z

SET

I

В

201

О

C9

RET

SET

1

С

202

LINE

CA

JP Z,NN

SET

I

D

203

THEN

CB

SET

1

E

204

TO

CC

CALL Z,NN

SET

1

H

205

STEP

CD

CALL NN

SET

1

L

206

DEF FN

CE

ADC A.N

SET

1

(HL)

207

CAT

CF

RST 8

SET

1

A

208

FORMAT

DO

RET NC

SET

2

В

209

MOVE

D1

POP DE

SET

2

С

210

ERASE

D2

JP NC,NN

SET

2

D

211

OPEN*

D3

OUT (N).A

SET

2

E

212

CLOSE*

D4

CALL NC.NN

SET

2

H

213

MERGE

D5

PUSH DE

SET

2

L

214

VARIFY

D6

SUB N

SET

2

(HL)

215

BEEP

D7

RST 16

SET

2

A

216

CIRCLE

D8

RET С

SET

3

В

217

INK

D9

EXX

SET

3

С

218

PAPER

DA

JP C,NN

SET

3

D

219

FLASH

DB

IN A.(N)

SET

3

E

220

BRIGHT

DC

CALL C.NN

SET

3

H

221

INVERSE

DD

PREFIXES IN-
STRUCTIONS
USING IX

SET

3

L

1

222

OVER

DE

SBC A,N

SET

3.

(HL) |

223

OUT

DF

RST 24

SET

3.

A 1

225

LLIST

El

POP HL

SET

4.

с 1

226

STOP

E2

JP PO.NN

SET

4,

D 1

227

READ

E3

EX (SP).HL

SET 4.E

22*

DATA

E4

CALL PO.NN

SET 4.H

229

RESTORE

E5

PUSH HL

SET 4,L

230

NEW

E6

AND N

SET 4.(HL)

231

BORDER

E7

RST 32

SET 4.A

232

CONTINUE

E8

RET PE

SET 5.В

233

DIM

E9

JP (HL)

SET 5.С

234

REM

EA

JP PE.NN

SET 5.D

235

FOR

EB

EX DE.HL

SET 5.E

236

GO TO

EC

CALL PE,NN

SET 5.H

237

GO SUB

ED

SEJ 5.L

238

INPUT

EE

XOR N

SET 5.(HL)

239

LOAD

EF

RST 40

SEt 5.A

240

LIST

FO

RET P

SET 6.В

241

LET

F1

POP AF .

SET 6.С

242

PAUSE

F2

JP P,NN

SET 6.D

243

NEXT

F3

DI

SET 6,E

244

POKE

F4

CALL P.NN

SET 6.H

245

PRINT

F5

PUSH AF,

SET 6.L

246

PLOT

F6

. OR N

SET 6.(HL)

2 47

RUN

F7

RST 48 .

SET 6.A

248

SAVE

F8

RET tf

SET 7,В

249

RUNDOMIZE

F9

LD SP.HL

SET 7.С

250

IF

FA

JP M,NN

SfiT 7.D

251

CLS

FB

EI

SET 7.E

252

DRAW

FC

CALL M,NN

SET 7,H

253

CLEAR

FD

PREFIXES'
INSTRUCTIONS
USING IY

SET 7,L '

254

RETURN

FE

CP N

SET 7.(HL)

255

COPY

FF

RfcT 56

SET 7.A




СОДЕРЖАНИЕ:


  Оставте Ваш отзыв:

  НИК/ИМЯ
  ПОЧТА (шифруется)
  КОД



Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Конец - "мы прошли многое, и еще большее нам предстоит пройти"...
Soft group - Перехват системных ошибок в Basic и TR-DOS при программировании на ассмблере (процедура).
Тусовка - О прошедшем празднике "Московского комсомольца".
Вступление - содержание номера.
Scene - интервью с группой OCA взятое на CAFe'2002.

В этот день...   6 мая