社区
汇编语言
帖子详情
简单字符拷贝功能,汇编movsb没有生效?
猿来是我
2010-12-31 11:43:13
.model small
.stack
.code
start:
c1 db "T"
c2 db "*"
cld
lea di,c2
lea si,c1
movsb
lodsb
stosb
mov ah,02
mov dl,c2
int 21h
Exit:
mov ah,4ch
mov al,00
int 21h
end start
结果还是输出*,我期望输出T. WHY?
...全文
98
8
打赏
收藏
简单字符拷贝功能,汇编movsb没有生效?
.model small .stack .code start: c1 db "T" c2 db "*" cld lea di,c2 lea si,c1 movsb lodsb stosb mov ah,02 mov dl,c2 int 21h Exit: mov ah,4ch mov al,00 int 21h end start 结果还是输出*,我期望输出T. WHY?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
leetow2003
2010-12-31
打赏
举报
回复
不想用data,这样也可以:
.model small
.stack
.code
c1 db "T"
c2 db "*"
start:
mov ax,cs
mov ds,ax
mov es,ax
cld
lea di,c2
lea si,c1
movsb
;lodsb
;stosb
mov ah,02
mov dl,c2
int 21h
Exit:
mov ah,4ch
mov al,00
int 21h
end start
一个傻冒
2010-12-31
打赏
举报
回复
楼主不想用data的话,那改成这样好了。
.model small
.stack
.code
c1 db "T"
c2 db "*"
start:
mov al, c1
xchg al, c2
mov ah,02
mov dl,c2
int 21h
Exit:
mov ah,4ch
mov al,00
int 21h
end start
猿来是我
2010-12-31
打赏
举报
回复
一定要使用.data,然后
mov ax,@data
mov ds,ax
mov es,ax
这样的方式?
TASM中,是不是定义变量的话,就得使用.data段?
如果不使用.data数据段的话,怎么写?
一个傻冒
2010-12-31
打赏
举报
回复
movsb将位于地址 DS:(E)SI 的字节移到地址 ES:(E)DI。楼主要给es赋值才行。
一个傻冒
2010-12-31
打赏
举报
回复
data segment
c1 db "T"
c2 db "*"
data ends
stack segment
;input stack segment code here
stack ends
code segment
assume cs:code,ds:data,ss:stack
start:
mov ax, data
mov ds, ax
mov es, ax
cld
lea di,c2
lea si,c1
movsb
lodsb
stosb
mov ah,02
mov dl,c2
int 21h
Exit:
mov ah,4ch
mov al,00
int 21h
code ends
end start
leetow2003
2010-12-31
打赏
举报
回复
对不起,这个可以
.model small
.stack
.data
c1 db "T"
c2 db "*"
.code
start:
mov ax,@data
mov ds,ax
mov es,ax
cld
lea di,c2
lea si,c1
movsb
;lodsb
;stosb
mov ah,02
mov dl,c2
int 21h
Exit:
mov ah,4ch
mov al,00
int 21h
end start
masmaster
2010-12-31
打赏
举报
回复
不会写简化段的。试试完整段的吧
assume cs:code,ds:data,es:data
data segment
c1 db 'T'
c2 db '*'
data ends
code segment
start:
mov ax,data
mov ds,ax
mov es,ax
lea si,c1
lea di,c2
cld
movsb
lodsb
mov dl,al
mov ah,2
int 21h
mov ah,4ch
int 21h
code ends
end start
leetow2003
2010-12-31
打赏
举报
回复
.model small
.stack
;.data
.code
c1 db "T"
c2 db "*"
start:
cld
lea di,c2
lea si,c1
movsb
lodsb
stosb
mov ah,02
mov dl,c2
int 21h
Exit:
mov ah,4ch
mov al,00
int 21h
end start
Golang中的
汇编
详解
我们知道 Go 语言的三位领导者中有两位来自 Plan 9 项目,这直接导致了 Go 语言的
汇编
采用了比较有个性的 Plan 9 风格。不过,我们不能因咽废食而放弃无所不能的
汇编
。 不同体系结构的 CPU,其内部寄存器的数量、...
Go
汇编
详解
动手点关注干货不迷路前言我们知道 Go 语言的三位领导者中有两位来自 Plan 9 项目,这直接导致了 Go 语言的
汇编
采用了比较有个性的 Plan 9 风格。不过,我们不能因咽废食而放弃无所不能的
汇编
。1、 Go
汇编
基础知识...
北京理工大学
汇编
语言复习重点(可打印)
汇编
语言笔记——微机结构基础、
汇编
指令基础
汇编
语言笔记——
汇编
程序开发、
汇编
大作业
汇编
语言笔记——接口技术与编程 北京理工大学
汇编
语言复习重点(可打印) 第一章:基础 性能指标计算 主频。CPU内部的频率...
用
汇编
写的病毒的原理
如何写一个
简单
的病毒程序 作者浑浑噩噩 转载请注明出处:http://www.czvc.com 引:前些天学病毒这门技术着实吃了很多苦头,走了很多弯路,尽管按我的知识水平,病毒已经是水到渠成的学习内容了。但是我现在学了...
程序的加载和执行(二)——《x86
汇编
语言:从实模式到保护模式》读书笔记22
但是这里有一个小小的问题,作者的本意是把1~24行的
字符
拷贝
到0~23行,又因为一次传送4个字节,所以传送的次数=24*80*2/4=960; 所以第112行应该改为: 112
mo
v ecx, 960 第539~565用于显示处理器品牌...
汇编语言
21,458
社区成员
41,601
社区内容
发帖
与我相关
我的任务
汇编语言
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
复制链接
扫一扫
分享
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章