Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
асвт .курсач.docx
Скачиваний:
3
Добавлен:
01.05.2025
Размер:
4 Мб
Скачать
☆

В действительных адресах:

ГПМ

0000

OUT 898

Отправляем управляющее слово 10001001 на Интерфейс 1

0001

0002

OUT ED8

Отправляем управляющее слово 11101101 на Интерфейс 2

0003

0004

IN port C1

Чтение из порта С(0) интерфейса 1 в А

0005

ANI 018

Выделение из А нулевого разряда

0006

0007

CPI 008

Сравниваем А с нулём

0008

0009

JNZ 0004

Если не ноль, переходим по адресу 0004

0010

0011

0012

CALL 0060

Если ноль, то передача управления в ПМ1

0013

0014

0015

IN port C1

Чтение из порта С(2) интерфейса 1 в А

0016

ANI 048

Выделение из А второго разряда

0017

0018

CPI 008

Сравниваем А с нулём

0019

0020

JZ 0045

Если ноль, то переход по адресу 0045

0021

0022

0023

IN port C1

Если не ноль, то чтение из порта С(3) в А

0024

ANI 088

Выделение из А третьего разряда

0025

0026

CPI 008

Сравниваем А с нулём

0027

0028

JZ 0039

Если ноль, то переход по адресу 0039

0029

0030

0031

IN port C1

Если не ноль, то чтение из порта С(4) в А

0032

ANI 108

Выделение из А четвёртого разряда

0033

0034

CPI 008

Сравниванием А с нулём

0035

0036

JNZ 0015

Если не ноль, то переход по адресу 0015

0037

0038

0039

CALL 0360

Передача управления в ПМ3

0040

0041

0042

JMP 0048

Безусловный переход по адресу 48

0043

0044

0045

CALL 0230

Передача управления в ПМ2

0046

0047

0048

IN port C1

Чтение из порта С(1) в А

0049

ANI 028

Выделение из А первого разряда

0050

0051

CPI 008

Сравниваем А с нулём

0052

0053

JNZ 0048

Если не ноль, то переход по адресу 48

0054

0055

0056

HLT

СТОП

0057

NOP

0058

NOP

0059

NOP

ПМ1

0060

MVI A, 108

Заслать содержимое 00010000 в A

0061

0062

OUT port B2

Передать содержимое А в порт B(4) интерфейса 2

0063

CALL ПМТ10+0

Обращение к ПМТ10 (задержка на 10 секунд)

0064

0065

0066

MVI A, 208

Заслать содержимое 00100000 в A

0067

0068

OUT port B2

Передать содержимое А в порт В(5) интерфейса 2

0069

CALL ПМТ10+0

Обращение к ПМТ10 (задержка на 10 секунд)

0070

0071

0072

IN port C1

Чтение из порта С(2) интерфейса 1 в А

0073

ANI 048

Выделение из А второго разряда

0074

0075

CPI 008

Сравниваем А с нулём

0076

0077

JNZ 0089

Если не ноль, переходим по адресу 89

0078

0079

0080

MVI A, 0C8

Заслать в А 00001100 (первая цифра = 1 на Табло 1)

0081

0082

OUT port A1

Передать содержимое А в порт А интерфейса 1 (вывод первой цифры на Табло 1)

0083

MVI A, 008

Заслать в А 00000000 (вторая цифра = 0 на Табло 1)

0084

0085

OUT port В1

Передать содержимое А в порт В интерфейса 1 (вывод второй цифры на Табло 1)

0086

JMP 0228

Возврат в ГПМ

0087

0088

0089

IN port C1

Чтение из порта С(3) интерфейса 1 в А

0090

ANI 088

Выделение из А третьего разряда

0091

0092

CPI 008

Сравниваем А с нулём

0093

0094

JZ 0105

Если ноль, переходим по адресу 105

0095

0096

0097

IN port C1

Если не ноль, то чтение из порта С(4) интерфейса 1 в А

0098

ANI 108

Выделение из А четвёртого разряда

0099

0100

CPI 0

Сравниваем А с нулём

0101

0102

JNZ 0068

Если не ноль, то переход по адресу 68

0103

0104

0105

MVI А, 018

Заслать содержимое 00000001 в А

0106

0107

OUT port A2

Передать содержимое А в порт А(0) интерфейса 2

0108

CALL ПМТ10+0

Обращение к ПМТ10 (задержка на 10 секунд)

0109

0110

0111

IN port C1

Чтение из порта С(2) интерфейса 1 в А

0112

ANI 048

Выделение из А второго разряда

0113

0114

CPI 008

Сравниваем А с нулём

0115

0116

JNZ 0128

Если не ноль, переходим по адресу 0128

0117

0118

0119

MVI A, 768

Заслать в А 01110110 (первая цифра = 2 на Табло 1)

0120

0121

OUT port A1

Передать содержимое А в порт А интерфейса 1 (вывод первой цифры на Табло 1)

0122

MVI A, 008

Заслать в А 00000000 (вторая цифра = 0 на Табло 1)

0123

0124

OUT port В1

Передать содержимое А в порт В интерфейса 1 (вывод второй цифры на Табло 1)

0125

JMP 0228

Возврат в ГПМ

0126

0127

0128

IN port C1

Чтение из порта С(3) интерфейса 1 в А

0129

ANI 088

Выделение из А третьего разряда

0130

0131

CPI 008

Сравниваем А с нулём

0132

0133

JZ 0144

Если ноль, переходим по адресу 0144

0134

0135

0136

IN port C1

Если не ноль, то чтение из порта С(4) интерфейса 1 в А

0137

ANI 108

Выделение из А четвёртого разряда

0138

0139

CPI 008

Сравниваем А с нулём

0140

0141

JNZ 0107

Если не ноль, то переход по адресу 0107

0142

0143

0144

MVI А, 028

Заслать содержимое 00000010 в А

0145

0146

OUT port A2

Передать содержимое А в порт А(1) интерфейса 2

0147

CALL ПМТ10+0

Обращение к ПМТ10 (задержка на 10 секунд)

0148

0149

0150

IN port C1

Чтение из порта С(2) интерфейса 1 в А

0151

ANI 048

Выделение из А второго разряда

0152

0153

CPI 008

Сравниваем А с нулём

0154

0155

JNZ 0167

Если не ноль, переходим по адресу 0167

0156

0157

0158

MVI A, 5Е8

Заслать в А 01011110 (первая цифра = 3 на Табло 1)

0159

0160

OUT port A1

Передать содержимое А в порт А интерфейса 1 (вывод первой цифры на Табло 1)

0161

MVI A, 008

Заслать в А 00000000 (вторая цифра = 0 на Табло 1)

0162

0163

OUT port В1

Передать содержимое А в порт В интерфейса 1 (вывод второй цифры на Табло 1)

0164

JMP 0228

Возврат в ГПМ

0165

0166

0167

IN port C1

Чтение из порта С(3) интерфейса 1 в А

0168

ANI 088

Выделение из А третьего разряда

0169

0170

CPI 008

Сравниваем А с нулём

0171

0172

JZ 0183

Если ноль, переходим по адресу 0183

0173

0174

0175

IN port C1

Если не ноль, то чтение из порта С(4) интерфейса 1 в А

0176

ANI 108

Выделение из А четвёртого разряда

0177

0178

CPI 008

Сравниваем А с нулём

0179

0180

JNZ 0146

Если не ноль, то переход по адресу 0146

0181

0182

0183

MVI А, 028

Заслать содержимое 00000100 в А

0184

0185

OUT port A2

Передать содержимое А в порт А(2) интерфейса 2

0186

CALL ПМТ10+0

Обращение к ПМТ10 (задержка на 10 секунд)

0187

0188

0189

IN port C1

Чтение из порта С(2) интерфейса 1 в А

0190

ANI 048

Выделение из А второго разряда

0191

0192

CPI 008

Сравниваем А с нулём

0193

0194

JNZ 0206

Если не ноль, переходим по адресу 0206

0195

0196

0197

MVI A, 4D8

Заслать в А 01001101 (первая цифра = 4 на Табло 1)

0198

0199

OUT port A1

Передать содержимое А в порт А интерфейса 1 (вывод первой цифры на Табло 1)

0200

MVI A, 008

Заслать в А 00000000 (вторая цифра = 0 на Табло 1)

0201

0202

OUT port В1

Передать содержимое А в порт В интерфейса 1 (вывод второй цифры на Табло 1)

0203

JMP 0228

Возврат в ГПМ

0204

0205

0206

IN port C1

Чтение из порта С(3) интерфейса 1 в А

0207

ANI 088

Выделение из А третьего разряда

0208

0209

CPI 008

Сравниваем А с нулём

0210

0211

JZ 0222

Если ноль, переходим по адресу 0222

0212

0213

0214

IN port C1

Если не ноль, то чтение из порта С(4) интерфейса 1 в А

0215

ANI 108

Выделение из А четвёртого разряда

0216

0217

CPI 008

Сравниваем А с нулём

0218

0219

JNZ 0185

Если не ноль, то переход по адресу 0185

0220

0221

0222

MVI А, 028

Заслать содержимое 0001000 в А

0223

0224

OUT port A2

Передать содержимое А в порт А(3) интерфейса 2

0225

CALL ПМТ10+0

Обращение к ПМТ10 (задержка на 10 секунд)

0226

0227

0228

RET

Возврат в ГПМ

0229

NOP

ПМ2

0230

MVI A, 108

Заслать содержимое 0001000 в А

0231

0232

OUT port A2

Передать содержимое А в порт А(4) интерфейса 2

0233

CALL ПМТ10+0

Обращение к ПМТ10 (задержка на 10 секунд)

0234

0235

0236

IN port C1

Чтение из порта С(2) интерфейса 1 в А

0237

ANI 048

Выделение из А второго разряда

0238

0239

CPI 008

Сравниваем А с нулём

0240

0241

JNZ 0253

Если не ноль, переходим по адресу 0253

0242

0243

0244

MVI A, 5A8

Заслать в А 01011010(первая цифра = 5 на Табло 1)

0245

0246

OUT port A1

Передать содержимое А в порт А интерфейса 1 (вывод первой цифры на Табло 1)

0247

MVI A, 008

Заслать в А 00000000 (вторая цифра = 0 на Табло 1)

0248

0249

OUT port В1

Передать содержимое А в порт В интерфейса 1 (вывод второй цифры на Табло 1)

0250

JMP 0350

Возврат в ГПМ

0251

0252

0253

IN port C1

Чтение из порта С(3) интерфейса 1 в А

0254

ANI 088

Выделение из А третьего разряда

0255

0256

CPI 008

Сравниваем А с нулём

0257

0258

JZ 0269

Если ноль, переходим по адресу 0269

0259

0260

0261

IN port C1

Если не ноль, то чтение из порта С(4) интерфейса 1 в А

0262

ANI 108

Выделение из А четвёртого разряда

0263

0264

CPI 008

Сравниваем А с нулём

0265

0266

JNZ 0232

Если не ноль, то переход по адресу 0232

0267

0268

0269

MVI А, 208

Заслать содержимое 00100000 в А

0270

0271

OUT port A2

Передать содержимое А в порт А(5) интерфейса 2

0272

CALL ПМТ10+0

Обращение к ПМТ10 (задержка на 10 секунд)

0273

0274

0275

IN port C1

Чтение из порта С(2) интерфейса 1 в А

0276

ANI 048

Выделение из А второго разряда

0277

0278

CPI 008

Сравниваем А с нулём

0279

0280

JNZ 0292

Если не ноль, переходим по адресу 0292

0281

0282

0283

MVI A, 7В8

Заслать в А 01111011 (первая цифра = 6 на Табло 1)

0284

0285

OUT port A1

Передать содержимое А в порт А интерфейса 1 (вывод первой цифры на Табло 1)

0286

MVI A, 008

Заслать в А 00000000 (вторая цифра = 0 на Табло 1)

0287

0288

OUT port В1

Передать содержимое А в порт В интерфейса 1 (вывод второй цифры на Табло 1)

0289

JMP 0350

Возврат в ГПМ

0290

0291

0292

IN port C1

Чтение из порта С(3) интерфейса 1 в А

0293

ANI 088

Выделение из А третьего разряда

0294

0295

CPI 008

Сравниваем А с нулём

0296

0297

JZ 0308

Если ноль, переходим по адресу 0308

0298

0299

0300

IN port C1

Если не ноль, то чтение из порта С(4) интерфейса 1 в А

0301

ANI 108

Выделение из А четвёртого разряда

0302

0303

CPI 008

Сравниваем А с нулём

0304

0305

JNZ 0271

Если не ноль, то переход по адресу 0271

0306

0307

0308

MVI А, 408

Заслать содержимое 01000000 в А

0309

0310

OUT port A2

Передать содержимое А в порт А(6) интерфейса 2

0311

CALL ПМТ10+0

Обращение к ПМТ10 (задержка на 10 секунд)

0312

0313

0314

IN port C1

Чтение из порта С(2) интерфейса 1 в А

0315

ANI 048

Выделение из А второго разряда

0316

0317

CPI 008

Сравниваем А с нулём

0318

0319

JNZ 0331

Если не ноль, переходим по адресу 0331

0320

0321

0322

MVI A, Е8

Заслать в А 00001110 (первая цифра = 7 на Табло 1)

0323

0324

OUT port A1

Передать содержимое А в порт А интерфейса 1 (вывод первой цифры на Табло 1)

0325

MVI A, 008

Заслать в А 00000000 (вторая цифра = 0 на Табло 1)

0326

0327

OUT port В1

Передать содержимое А в порт В интерфейса 1 (вывод второй цифры на Табло 1)

0328

JMP 0350

Возврат в ГПМ

0329

0330

0331

IN port C1

Чтение из порта С(3) интерфейса 1 в А

0332

ANI 088

Выделение из А третьего разряда

0333

0334

CPI 00

Сравниваем А с нулём

0335

0336

JZ 0347

Если ноль, переходим по адресу 0347

0337

0338

0339

IN port C1

Если не ноль, то чтение из порта С(4) интерфейса 1 в А

0340

ANI 108

Выделение из А четвёртого разряда

0341

0342

CPI 008

Сравниваем А с нулём

0343

0344

JNZ 0310

Если не ноль, то переход по адресу 0310

0345

0346

0347

MVI А, 028

Заслать содержимое 00001000 в А

0348

0349

OUT port В2

Передать содержимое А в порт В(3) интерфейса 2

0350

RET

Возврат в ГПМ

0351

NOP

0352

NOP

0353

NOP

0354

NOP

0355

NOP

0356

NOP

0357

NOP

0358

NOP

0359

NOP

ПМ3

0360

ПМ3+0

MVI A, 808

Заслать содержимое 10000000 в А

0361

1

0362

2

OUT port A2

Передать содержимое А в порт А(7) интерфейса 2

0363

3

CALL ПМТ10+0

Обращение к ПМТ10 (задержка на 10 секунд)

0364

4

0365

5

0366

6

IN port C1

Чтение из порта С(2) интерфейса 1 в А

0367

7

ANI 048

Выделение из А второго разряда

0368

8

0369

9

CPI 008

Сравниваем А с нулём

0370

ПМ3+10

0371

1

JNZ 0383

Если не ноль, переходим по адресу 0383

0372

2

0373

3

0374

4

MVI A, 7F8

Заслать в А 01111111 (первая цифра = 8 на Табло 1)

0375

5

0376

6

OUT port A1

Передать содержимое А в порт А интерфейса 1 (вывод первой цифры на Табло 1)

0377

7

MVI A, 008

Заслать в А 00000000 (вторая цифра = 0 на Табло 1)

0378

8

0379

9

OUT port В1

Передать содержимое А в порт В интерфейса 1 (вывод второй цифры на Табло 1)

0380

ПМ3+20

JM 0480

Возврат в ГПМ

0381

1

0382

2

0383

3

IN port C1

Чтение из порта С(3) интерфейса 1 в А

0384

4

ANI 088

Выделение из А третьего разряда

0385

5

0386

6

CPI 008

Сравниваем А с нулём

0387

7

0388

8

JZ 0399

Если ноль, переходим по адресу 0399

0389

9

0390

ПМ3+30

0391

1

IN port C1

Если не ноль, то чтение из порта С(4) интерфейса 1 в А

0392

2

ANI 108

Выделение из А четвёртого разряда

0393

3

0394

4

CPI 008

Сравниваем А с нулём

0395

5

0396

6

JNZ 0362

Если не ноль, то переход по адресу 0362

0397

7

0398

8

0399

9

MVI А, 018

Заслать содержимое 00000001 в А

0400

ПМ3+40

0401

1

OUT port B2

Передать содержимое А в порт B(0) интерфейса 2

0402

2

CALL ПМТ10+0

Обращение к ПМТ10 (задержка на 10 секунд)

0403

3

0404

4

0405

5

IN port C1

Чтение из порта С(2) интерфейса 1 в А

0406

6

ANI 048

Выделение из А второго разряда

0407

7

0408

8

CPI 008

Сравниваем А с нулём

0409

9

0410

ПМ3+50

JNZ 0422

Если не ноль, переходим по адресу 0422

0411

1

0412

2

0413

3

MVI A, 5F8

Заслать в А 01011111 (первая цифра = 9 на Табло 1)

0414

4

0415

5

OUT port A1

Передать содержимое А в порт А интерфейса 1 (вывод первой цифры на Табло 1)

0416

6

MVI A, 008

Заслать в А 00000000 (вторая цифра = 0 на Табло 1)

0417

7

0418

8

OUT port В1

Передать содержимое А в порт В интерфейса 1 (вывод второй цифры на Табло 1)

0419

9

JMP 0480

Возврат в ГПМ

0420

ПМ3+60

0421

1

0422

2

IN port C1

Чтение из порта С(3) интерфейса 1 в А

0423

3

ANI 08м

Выделение из А третьего разряда

0424

4

0425

5

CPI 008

Сравниваем А с нулём

0426

6

0427

7

JZ 0438

Если ноль, переходим по адресу 0438

0428

8

0429

9

0430

ПМ3+70

IN port C1

Если не ноль, то чтение из порта С(4) интерфейса 1 в А

0431

1

ANI 108

Выделение из А четвёртого разряда

0432

2

0433

3

CPI 008

Сравниваем А с нулём

0434

4

0435

5

JNZ 0401

Если не ноль, то переход по адресу 0401

0436

6

0437

7

0438

8

MVI А, 408

Заслать содержимое 00000010 в А

0439

9

0440

ПМ3+80

OUT port B2

Передать содержимое А в порт B(1) интерфейса 2

0441

1

CALL ПМТ10+0

Обращение к ПМТ10 (задержка на 10 секунд)

0442

2

0443

3

0444

4

IN port C1

Чтение из порта С(2) интерфейса 1 в А

0445

5

ANI 048

Выделение из А второго разряда

0446

6

0447

7

CPI 008

Сравниваем А с нулём

0448

8

0449

9

JNZ 0461

Если не ноль, переходим по адресу 0461

0450

ПМ3+90

0451

1

0452

2

MVI A, 5F8

Заслать в А 01011111 (первая цифра = 9 на Табло 1)

0453

3

0454

4

OUT port A1

Передать содержимое А в порт А интерфейса 1 (вывод первой цифры на Табло 1)

0455

5

MVI A, 5F8

Заслать в А 01011111(вторая цифра = 9 на Табло 1)

0456

6

0457

7

OUT port В1

Передать содержимое А в порт В интерфейса 1 (вывод второй цифры на Табло 1)

0458

8

JMP 0480

Возврат в ГПМ

0459

9

0460

ПМ3+100

0461

1

IN port C1

Чтение из порта С(3) интерфейса 1 в А

0462

2

ANI 088

Выделение из А третьего разряда

0463

3

0464

4

CPI 008

Сравниваем А с нулём

0465

5

0466

6

JZ 0477

Если ноль, переходим по адресу 0477

0467

7

0468

8

0469

9

IN port C1

Если не ноль, то чтение из порта С(4) интерфейса 1 в А

0470

ПМ3+110

ANI 108

Выделение из А четвёртого разряда

0471

1

0472

2

CPI 00

Сравниваем А с нулём

0473

3

0474

4

JNZ 0440

Если не ноль, то переход по адресу 0440

0475

5

0476

6

0477

7

MVI А, 028

Заслать содержимое 00001000 в А

0478

8

0479

9

OUT port В2

Передать содержимое А в порт В(3) интерфейса 2

0480

ПМ3+120

RET

Возврат в ГПМ

0481

NOP

NOP

0482

NOP

0483

NOP

0484

NOP

0485

NOP

0486

NOP

0487

NOP

0488

NOP

0489

NOP

ПМТ10

0490

LXI HL, 001016

Загружаем в HL адрес ОЗУ+001016

0491

0492

0493

MVI M, 008

Обнуляем счетчик1

0494

0495

LXI HL, 001116

Загружаем в HL адрес ОЗУ+001116

0496

0497

0498

MVI M, 008

Обнуляем счетчик2

0499

0500

LXI HL, 001216

Загружаем в HL адрес ОЗУ+001216

0501

0502

0503

MVI M, 008

Обнуляем счетчик3

0504

0505

NOP

0506

NOP

0507

NOP

0508

INR M

Инкрементируем счетчик3

0509

MVI A, FF8

Заносим число 25510 в аккумулятор

0510

0511

CMP M

Сравниваем счетчик 3 с числом 25510

0512

JNZ 0505

Если счетчик3 ≠ 25510, переход по адресу 0505

0513

0514

0515

LXI HL, 001116

Загружаем в HL адрес ОЗУ+001116

0516

0517

0518

INR M

Инкрементируем счетчик2

0519

MVI A, 408

Заносим число 6410 в аккумулятор

0520

0521

CMP M

Сравниваем счетчик2 с числом 6410

0522

JNZ 0500

Если счетчик2 ≠ 6410, переход по адресу 0500

0523

0524

0525

LXI HL, 001016

Загружаем в HL адрес ОЗУ+001016

0526

0527

0528

INR M

Инкрементируем счетчик1

0529

MVI A, 648

Заносим в аккумулятор число 10010

0530

0531

CMP M

Сравниваем счетчик1 с числом 10010

0532

JNZ 0495

Если счетчик1 ≠ 1010, переход по адресу 0495

0533

0534

0535

RET

Выход из программного модуля ПМТ10