【微机原理DOS功能调用实验】最全汇总

这篇博客详细介绍了微机原理中的DOS功能调用,包括汇编语言编程实现数值计算、字符转换、内存读取、外设交互等多种操作。通过实例展示了如何使用汇编语言编写程序,如键盘输入处理、数据比较、内存数据求和等,并解释了程序设计思路和关键指令的运用。
摘要由CSDN通过智能技术生成

1,编程实现求S=(X²+Y²)/Z的值,并将结果放入RESULT单元。

DATA SEGMENT 
    X DB 2
    Y DB 9
    Z DB 6
    RESULT DB ? 
 
DATA ENDS
 
CODE SEGMENT  
    
    ASSUME CS:CODE,DS:DATA
 
START:
 
    MOV AX,DATA
    MOV DS,AX;数据段 
    MOV AL,X
    MOV BL,AL
    MUL BL  ;X的平方
    MOV DX,AX;保存结果
    MOV AL,Y
    MOV BL,AL
    MUL BL ;Y的平方
    ADD AX,DX
    MOV BL,Z
    DIV BL
    MOV RESULT,AL                                             
    MOV AH,4CH
    INT 21H
     
CODE ENDS
     END START

2, 编写程序:将键盘输入的小写字母转换成大写字母并输出显示,直到输入字符'#'结束。

  如果输入的不是小写字母时要显示错误提示'PLEASE INPUT AGAIN!'。(3.asm)

用到的几号功能:01H 键盘输入 

 "#" 判断是不是#号 

09H a-z以外的字母就显示字符串 

 02H显示对应的大写字母

DATA SEGMENT 
    STR DB 'PLEASE INPUT AGAIN!',0DH,0AH, $
 
DATA ENDS
 
CODE SEGMENT  
    
    ASSUME CS:CODE,DS:DATA
 
START:
 
    MOV AX,DATA
    MOV DS,AX;数据段
L1:    
    MOV AH,1
    INT 21H;字符串ASAII码保存在AL
    CMP AL,'#'
    JZ EXIT                            
    CMP AL,'a'
    JB Disp ;<a显示字符串
    CMP AL,'z'
    JA Disp ;不是小写字母以外的字母顺序执行
    SUB AL,20H ;42H是B,b是62H   
    MOV DL,AL
    MOV AH,2
    INT 21H 
    JMP L1   
Disp: 
    LEA DX,STR
    MOV AH,9 ;9号功能显示字符串
    INT 21H 
    JMP L1    
    
EXIT:                                             
    MOV AH,4CH
    INT 21H
     
CODE ENDS
     END START

3, 已知A,B,C,D,S均为无符号字节变量,实现(A*B+C)/D-100放在S中。

解析:A*B 字节*字节=字,然后字+字节C不行,需要给C进行字扩展CBW。字+字=字,然后字/字

节,商放AL。字节-字节可以。结果给字节S。

4,用汇编语言编写程序,从外设71H读取一个数M,判断其值是否在10和20之间,如果M≥20,则

送0FFH给外设73H;如果M<10,则送00H给外设73H;如果10≤M<20,则送

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值