分支、循环程序设计

来源:百度知道 编辑:UC知道 时间:2024/05/11 05:37:43
实验内容:
(1)数据区中有一个字节块,从中找到第一个为0的单元,记下地址和 次数。
(2)有一个10个字节的有符号数组,编程实验使该数组的元素按照从小到大的次序排列。
用汇编编写

排序:
DATA SEGMENT
ARRAY DW 5,4,3,2,1,0,-1,-2,-3
COUNT DW $-ARRAY
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA

RANGE PROC FAR
BEGIN: MOV AX,DATA
MOV DS,AX
MOV CX,COUNT
SHR CX,1
DEC CX
LP2: MOV SI,CX
LEA BX,ARRAY
LP1: MOV AX,[BX]
CMP AX,[BX+2]
JLE NEXT
XCHG AX,[BX+2]
MOV [BX],AX
NEXT: ADD BX,2
LOOP LP1
MOV CX,SI
LOOP LP2
MOV AH,4CH
INT 21H
RANGE ENDP
CODE ENDS
END BEGIN

查找:
DATA SEGMENT
DATA1 DB 1,2,3,0,0,1,2,3
DATA ENDS

CODE SEGMENT
ASSUME CS:CODE,DS:DATA

MAIN PROC FAR
START: MOV AX,DATA
MOV DS,AX
LEA BX,DATA1
MOV CL,8
LP: MOV AL, [BX]
OR AL,0
JZ NEXT1