请高手解题(汇编语言作业)

来源:百度知道 编辑:UC知道 时间:2024/05/27 11:13:26
1.试编制一源程序,统计DA1字单元中含0的个数,如统计的个数为奇数,则将进位位置1,否则进位位清0。

DATA SEGMENT

DA1 DW XXXX

DATA ENDS

2.试编制一程序段,用串操作指令实现以DA_BY为首址的20H个字节单元中存放相同字符‘Y’(设DA_BY存储区已有ES指向)。

如答案正确,再加50分

1.-----
DATA SEGMENT
DA1 DW 1,2,3,0,5,0,6,0,0,0,6
count DB ?
DATA ENDS
code SEGMENT
assume CS:data,DS:data
start:
MOV DX,data
MOV DS,DX
MOV CX,11
MOV SI,OFFSET da1
loop1: CMP WORD PTR[SI],0 ;统计个数
JNE next
INC count
next: INC SI
INC SI
LOOP loop1

MOV AL,count
XOR AH,AH
MOV BL,2
DIV BL

CMP AH,0
JE oushu
jishu: STC
JMP exit
oushu: CLC
exit: MOV AL,count ;转换成ascII然后输出,运行可以看到统计结果
ADD AL,30h
MOV DL,AL
MOV AH,2
INT 21h

MOV AH,4ch
INT 21h

code ENDS
END start
2.-----
data1 SEGMENT
y1 DB 'Y'
data1 ENDS

data2 SEGMENT
DA_BY DB 20 dup('$')
data2 ENDS

code SEGMENT
assume DS:data1,ES:data2,CS:code,
start:
MOV DX,data2
MOV ES,DX
MOV DX,data1
MOV DS,DX

MOV SI,OF