王爽《汇编语言》第10章 实验10 编写子程序

这篇博客详细介绍了如何使用汇编语言编写子程序,包括显示字符串、进行除法运算以及数据转换成字符。实验中涉及到的数据段定义、子程序设计以及调用过程,展示了汇编语言的实际应用。
摘要由CSDN通过智能技术生成
花了三个多小时写出来的东西,真费劲。。。接下来就是本书的两个课程设计之一。
assume cs:code

data segment
  db 'Welcome to masm!',0
data ends

numberdata segment
  dw 123,12666,1,8,3,38
numberdata ends

code segment
start:
  ;测试显示函数
  mov dh,8
  mov dl,3
  mov cl,2
  mov ax,data
  mov ds,ax
  mov si,0
  call show_str
  
  ;测试除法
  mov ax,0FFFFH
  mov dx,0FFFFH
  mov cx,0FH
  call divdw
  
  ;测试数据转字符
  mov ax,data
  mov ds,ax
  mov si,0
  mov ax,numberdata
  mov es,ax
  mov ax,es:[0]
  call dtoc
  
  mov ax,4c00h
  int 21h

dtoc: ;功能:将word型数据转变为表示十进制数的字符串,字符串以0为结尾符
      ;参数:(ax)=word型数据
      ;      ds:si指向字符串首地址 (‘0’:30H,‘9’:39H) 
      push bx
      push cx
      push si
        
      mov dx,0
    k:  
      mov cx,ax
      jcxz r
      mov cx,10     
      call divdw
      mov bx,30H
      add bx,cx
      mov ds:[si],bx
      inc si
      loop k
    r:
      pop si
      pop cx
      pop bx  
      ret
      
     
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值