此文档来源于网络,如有侵权请联系网站删除
实验一:简单程序设计实验
(1)编写一个 32 位无符号数除法的程序, 要求将存放在 NUM1 中的 32 位无符号数与存放
在 NUM2 中的 16 位无符号数相除,结果存放在 NUM3 和 NUM4 中。
程序流程图略。
参考源程序:
DATA SEGMENT
NUM1 DD 2A8B7654H
NUM2 DW 5ABCH
NUM3 DW ?
NUM4 DW ?
DATA ENDS
CODE SEGMENT
ASSUME DS:DATA, CS:CODE
START: MOV AX,DATA ;数据段寄存器初始化
MOV DS,AX
MOV AX, WORD PTR NUM1
MOV DX, WORD PTR NUM1+2
DIV NUM2
MOV NUM3,AX
MOV NUM4,DX
MOV AH,4CH ;正常返回 DOS 系统
INT 21H
CODE ENDS
END START
(2 )编写一个拆字程序。要求将存放在 ARY 单元的 2 位十六进制数 X X 拆为 X 和 X 两
1 2 1 2
部分,并以 0X 1 和 0X2 的形式分别存入 ARY+1 和 ARY+2 单元中。
程序流程图略。
参考源程序:
DATA SEGMENT
ARY DB 2AH,?,?
DATA ENDS
CODE SEGMENT
ASSUME DS:DATA, CS:CODE
START: MOV AX,DATA
MOV DS,AX
MOV SI,OFFSET ARY ;取ARY 的偏移地址
MOV AL,[SI] ;取 16进制数至 AL
只供学习交流用
此文档来源于网络,如有侵权请联系网站删除
MOV BL,AL
AND AL,0F0H ;取 16进制数的高四位,即 X 1
SHR AL,4
MOV [SI+1],AL ;存 0X 1
MOV AL,BL
AND AL,0FH ;取 16进制数的低四位,即 X2
MOV [SI+2],AL ;存 0X 2
MOV AH,4CH
INT 21H
CODE ENDS
END START
只供学习交流用
此文档来源于网络,如有侵权请联系网站删除
实验二:分支程序设计实验
(1)编写一个字符比较程序,比较 3 个无符号字节数 A ,B ,C 的大小,并根据比较结果
对变量 K 赋值:
如果 3 个数不相等,则 K=0 ;
如果 3 个数中有两个相等,则 K=1 ;
如果 3 个数都相等,则 K=2 。
程序流程图略。
参考源程序:
DATA SEGMENT ;定义待比较数 A 、B 、C ,比