毕业论文开发语言企业开发JAVA技术.NET技术WEB开发Linux/Unix数据库技术Windows平台移动平台嵌入式论文范文英语论文
您现在的位置: 毕业论文 >> 开发语言 >> 正文

用80X86汇编语言写出来的九九乘法表 第2页

更新时间:2012-6-13:  来源:毕业论文
DSEG SEGMENT
DATA DB 1,2,3,4,5,6,7,8,9
DSEG ENDS
CSEG SEGMENT
  ASSUME CS:CSEG,DS:DSEG
START: MOV AX,DSEG
  MOV DS,AX
  MOV BL,0 ;BL置为零
COL: INC BL ;BL+1
  LEA SI,DATA ;设置目的操作数指针
  MOV CH,BL
LINE: MOV AL,BL
  MOV BH,[SI] ;[SI]为SI指向的内存单元
  MUL BH ;BH与AL相乘
  MOV DH,AL
  MOV DL,BL
  ADD DL,30H ;十进制显示第一个数
  MOV AH,02H
  INT 21H
  MOV DL,'*' ;显示乘号
  MOV AH,02H
  INT 21H
  MOV DL,BH
  ADD DL,30H ;十进制显示乘后的结果
  MOV AH,02H
  INT 21H
  MOV DL,'='
  MOV AH,02H
  INT 21H  
  MOV DL,DH
  MOV CL,4 ;CL为计数器
  SHR DL,CL ;逻辑右移四位
  CMP DL,9 ;DL与9进行比较
  ADD DL,30H
  MOV AH,02H
  INT 21H
  MOV DL,DH
  AND DL,0FH ;把无用位清零
  CMP DL,9 ;两个数进行比较
  JA M2 ;DL大于9跳转M2
  JMP M4 ;否则无条件跳转M4
M2: ADD DL,7H ;DL的ASCII码加7
M4: ADD DL,30H ;DL的ASCII码加30
  JMP OUT2 ;无条件跳转OUT2
OUT2: MOV AH,02H
  INT 21H
  MOV DL,' '
  MOV AH,02H
  INT 21H
  INC SI
  DEC CH ;自减指令,CH自减1
  JNZ LINE ;测试零标志,ZF=0
  MOV DL,0AH
  MOV AH,02H
  INT 21H
  MOV DL,0DH
  MOV AH,02H
  INT 21H ;屏幕回车换行,光标移到下一行首字符位置
  CMP BL,8 ;两个数进行比较
  JNA COL ;小于等于,跳转COL
  MOV AH,4CH
  INT 21H
CSEG ENDS
  END START

上一页  [1] [2] 

设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©chuibin.com 优尔论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。