首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 单片机 >

求汇编程序 急

2012-02-24 
求汇编程序 急急急急十万火急急求汇编程序要求能实现输入,查找,统计,输出如:输入一个字符串查找有没有A(或

求汇编程序 急急急急 十万火急
急求汇编程序     要求能实现输入,查找,统计,输出
如:输入一个字符串   查找有没有A(或60)要是有的话统计一共有几个A(或60)然后把结果输出    

二进制的数转换成十六进制(或十进制)以ASCII码输出
“进制的数转换成十六进制(或十进制)以ASCII码输出”意思是
输入一个字符串(是二进制的籽)   然后把二进制的数转换成十六进制(或十进制)以ASCII码输出     能满足两位数的这样输出就行

还有   数据传递问题      
如   A   DB   (..........)
      B   DB     ..........
                  ..........
合并后再传递给C     然后输出

[解决办法]
DATA SEGMENT
VAR DB 23,34,45,60,90,00;00为结束
NUM DB 0 ;取一个变量
N EQU $-VAR
STR1 DB 'FIND! ', '$ '
STR2 DB 'NOFIND! ' '$ '
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
BG: MOV AX,DATA
MOV DS,AX
MOV CX,N
LEA SI,VAR
NEXT:
CMP BYTE PTR[SI],00
JE FINDOVER ;检查是否结束查找
CMP BYTE PTR[SI],60 ;是否为A,
JNE NOEQ ;为不为A则转
INC NUM ;为A计数
NOEQ: INC SI
LOOP NEXT


FINDOVER:
CMP NUM,00 ;看看计数器里有没有值
JNE LP1 ;有A则转
MOV AH,9 ;没有A提示
LEA DX,STR2
INT 21H
JMP EXIT
LP1:
;假设最多9个
MOV AL,NUM ;显示个数
ADD AL,30H
MOV DL,AL
MOV AH,2
int 21H ;2号功能调用
MOV AH,9 ;输出提示
LEA DX,STR1
INT 21H
EXIT: MOV AH,4CH
INT 21H
CODE ENDS
END BG

;在你的程序基础上做的修改...
;没有调试工具,你还得自己试试哈

热点排行