1.编写一个计算字符串长度的子程序,字符串以0为结尾标志。入口参数:字符串的首地-|||-址指针为DS:SI:出口参数:在AX中返回字符串的长度。,汇编语言
时间: 2024-01-22 18:20:57 浏览: 87
编写一个程序,求字符串的长度
5星 · 资源好评率100%
以下是计算字符串长度的汇编子程序:
```
; 字符串长度计算子程序
; 入口参数:
; DS:SI 指向字符串的首地址
; 出口参数:
; AX 返回字符串的长度
str_length:
xor ax, ax ; 将 AX 清零
.loop:
cmp byte [ds:si], 0 ; 比较当前字符是否为结束符 0
je .done ; 如果是,跳到结束
inc ax ; AX 加 1
inc si ; 指向下一个字符
jmp .loop ; 继续循环
.done:
ret ; 返回
```
使用示例:
```
mov si, offset my_string ; 字符串首地址
call str_length ; 调用字符串长度计算子程序
; 此时 AX 中存储的就是字符串的长度
```
其中 `my_string` 是一个以 0 结尾的字符串。
阅读全文