string - 为什么字符串声明在汇编 8086 中很重要?
问题描述
我想编写一个程序来遍历一个字符串并计算字母“C”出现了多少次,(每当有一个 ltter C 时,我都会增加“BX”的值)现在代码可以正常工作像这样
LEA DI, STRING
MOV CX, 6h
FOR:
CMP CX, 0
JE END
cmp [DI], "C"
jnz siPasDeC
inc BX
siPasDeC:
INC DI
dec cx
jmp FOR
END:
ret
hlt
STRING DB "CCKCCD"
但是当我STRING DB "CCKCCD"
在第一行写程序时,程序确实是一个无限循环。你能告诉我为什么会这样吗?
PS:最好每次都写“ret”和“hlt”;因为我没有看到人们在网上写它,但在大学里我们被迫写它。
解决方案
推荐阅读
- python - 如何根据另一列中的值检查 pandas df 列值是否存在?
- leaflet - 如何在传单中的多边形内获得一个圆圈
- kubernetes - 在本地系统中哪里可以找到 Kubernetes 调度程序配置文件
- mongodb - 将monogdb集合中的数据导出到grafana
- android - Android Studio:“AVD Pixel_2_API_30 的模拟器进程已终止。” 在 MacBook Pro M1(Apple Silicon)上
- firebase - A/B 测试:事件计数指标,而不是转化指标
- solr - solr 在带有冒号的 id 上流式传输最短路径错误
- php - 如何在不同的引导选项卡上调用 ajax?
- javascript - 如何使用 docxtemplater 在 word 文件中构建列表?
- vba - Word表格单元格上的条件格式,在每个单元格值更改后自动运行