计算机接口技术与微分原理

本文介绍了多个使用汇编语言实现的计算机接口技术实例,包括数值计算、键盘输入判断、屏幕显示、字符串处理等。通过这些例子,读者可以了解如何在低级别层面进行程序设计,涉及MASM汇编指令和基本的计算机接口操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

例4.8求10个无符号字节数的和


DATA SEGMENT

    ;此处输入数据段代码

TABLE DB 12H,23H,34H,45H,56H

      DB67H,78H,89H,9AH,0FDH

     SUM DW ?                     

DATA ENDS

;

CODE SEGMENT

    ASSUMECS:CODE,DS:DATA,ES:DATA

START:

;此处输入代码段代码

    MOV AX,DATA

    MOV DS,AX

    MOV ES,AX

    LEASI,TABLE

    MOV CX,10

    XOR AX,AX

NEXT:ADD AL,[SI]

     ADC AH,0

     INC SI

     LOOP NEXT

     MOV SUM,AX

     HLT

CODE ENDS

    END START


例4.9判断是否有F8按下,若有则转NEXT


DATAS SEGMENT

    ;此处输入数据段代码 

DATAS ENDS

STACKS SEGMENT

    ;此处输入堆栈段代码

STACKS ENDS

CODES SEGMENT

    ASSUMECS:CODES,DS:DATAS,SS:STACKS

START:

    MOVAX,DATAS

    MOV DS,AX

    ;此处输入代码段代码

    MOV AH,0

    CMP AL,0

    JNZ ERROR

    CMP AH,42H

    JE NEXT

NEXT:

ERROR:

CODES ENDS

    END START


例4.10将光标置于0显示页(20,30)位置,并以正常属性打印‘$’


DATAS SEGMENT

    ;此处输入数据段代码 

DATAS END

STACKS SEGMENT

    ;此处输入堆栈段代码

STACKS ENDS

CODES SEGMENT

    ASSUMECS:CODES,DS:DATAS,SS:STACKS

START:

    MOVAX,DATAS

    MOV DS,AX

    ;此处输入代码段代码

    MOV AH,2

    MOV BH,0

    MOV DH,20

    MOV DL,30

    INT 10H

    MOV AH,9

    MOV BH,0

    MOV BL,7

    MOV AL,'$'

    MOV CX,1

    INT 10H

CODES ENDS

    END START


 

例4.11从键盘输入Y或N字符


DATAS SEGMENT

    ;此处输入数据段代码 

DATAS ENDS

STACKS SEGMENT

    ;此处输入堆栈段代码

STACKS ENDS

CODES SEGMENT

    ASSUMECS:CODES,DS:DATAS,SS:STACKS

START:

    MOVAX,DATAS

    MOV DS,AX

    ;此处输入代码段代码

    KEY:MOVAH,1

    INT 21H

    CMP AL,'Y'

    JE YES

    CMP AL,'N'

    JE DAT

    JMP KEY

YES:

DAT:

CODES ENDS

    END START


例4.12从键盘上输入字符串‘hello’,并在串尾加标识符$


DATA SEGMENT

    ;此处输入数据段代码 

    STRING DB10,0,10 DUP(?)

DATA ENDS

CODE SEGMENT

    ASSUMECS:CODE,DS:DATA

START:

    MOV AX,DATA

    MOV DS,AX

    ;此处输入代码段代码

    LEADX,STRING

    MOV AH,0AH

    INT 21H

    MOVCL,STRING+1

    XOR CH,CH

    ADD DX,CX

    MOV BX,DX

    MOV BYTEPTR[BX+2],'$'

    MOV AH,4CH

    INT 21H

CODE ENDS

    END START


 

结果:

例4.13在屏幕上一次显示1,2,3,A ,B ,C


DATA SEGMENT

    ;此处输入数据段代码

    STR1 DB '123ABC'

DATA ENDS

CODE SEGMENT

    ASSUMECS:CODE,DS:DATA

START:

    MOV AX,DATA

    MOV DS,AX

    ;此处输入代码段代码

    LEA BX,STR1

    MOV CX,6

LPP:MOV AH,2

    MOV DL,[BX]

    INC BX

    INT 21H

    LOOP LPP

    MOV AH,4CH

    INT 21H

CODE ENDS

    END START

例4.14在屏幕上显示‘HELLO WORLD!’


DSEG SEGMENT

    ;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值