debug命令
## 标志位
1、计算(a+b-c)*2/5的程序段,其中a、b、c、均为字节变量,无符号数,结果存放在字变量R中,之后将计算结果R拓展为双字存放在双字变量X中,请写出完整的程序段。
2、试编写一个汇编程序语言,计算以“$"符号结尾的字符串STRING1的大写字母的个数,将个数存放在字节变量COUNT中。只写出代码段和数据段的关键部分
3、计算sum=a1+a2+。。。。a10,已知她们依次存放在以BUF为首址的数据区,每个数据站两个字节,和SUM也为两个字节,请写完整程序
4、从键盘接受一个四位的十六进制数并存放在bx中(键盘接收字符调用int 21h终端,ah=1,接收的字符的ascii码在al)完整程序并注释
5、定义长度为100的字节数组ARRAYBYTE,试编写汇编语言程序,统计其中非负数的个数,将个数存入字节变量COUNT,并将所有数做绝对值运算,写出关键部分
DATA SEGMENT
STRING DB 'I WILL success!$'
COUNT DB 0
NUM DW $-STRING
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE ,DS:DATA
START: MOV AX, DATA
MOV DS, AX
MOV CX, NUM
MOV BX, OFFSET STRING
ALP: MOV AL, [BX]
CMP AL, '$' ;判断是不是最后一个字符
JZ OVER
INC BX
CMP AL, 'a' ;AL与小写a比较
JB NEXT1 ;AL比a小时执行next1
CMP AL, 'z'
JA NEXT1 ;AL比z大时执行next1
INC COUNT ;记录小写字母的个数
NEXT1:
LOOP ALP
OVER: MOV AH, 4CH
INT 21H
CODE ENDS
END START