32位汇编如何操控常量地址的值?

16位汇编下,如果用段+偏移的方式给出地址,CPU自然就知道取这个地址里面的内容进行相关运算。比如,movax,ds:[bx].CPU是将ds:bx地址里面的值而非当前地址数放到ax里面去。所以,在16位汇编下,我们要想操作常量地址的内容,得首先将其映射到寄存器里面去寻址。但是在32位汇编下,CPU对段+偏移的地址还有类似的理解吗?假如我想修改常量地址0B800:1200处一个字长值为100

作者: zybzyb1987 发布时间: 12-31

段名到底代表什么?

datasegmentpara numdd12h len=$-data;此时的段名似乎是表示数据段的偏移地址dataendscodesegment assumecs:code,ds:datastart: movax,data;此时段名似乎是表示数据段的段地址 movds,ax  

作者: leetow2003 发布时间: 12-31

C语言的指针相当于汇编语言的什么指令?

---

作者: GGGFFGGG 发布时间: 12-31

简单字符拷贝功能,汇编movsb没有生效?

.modelsmall.stack.codestart:c1db"T"c2db"*"cldleadi,c2leasi,c1movsblodsbstosbmovah,02movdl,c2int21hExit:movah,4chmoval,00int21hendstart结果还是输出*,我期望输出T.WH

作者: MyNoName 发布时间: 12-31

C++DLL函数地址上的一个问题

C++程序调用一个DLL,在PE下对这个DLL的导出函数名进行了长度一样的更改并重新生成了导出函数表,同时在C++程序中改为新的导出函数名,再次用C++动态调用该DLL得时候,发现指针地址获取为0了,于是我做了2个操作来确认以上步骤1.用PE查看DLL导出函数信息,发现函数偏移地址没有任何变化,只有函数名被更改了,并且函数名长度与原来一样2.并非所有函数指针都无法获取,一共5个导出函数,只有2

作者: Carpathia 发布时间: 12-31

LEA EAX,[EBP-16]和MOV EAX,[EBP-16]的差别

RT

作者: My_Love 发布时间: 12-31

帮我看看我的 程序~~~谢谢了~

统计F000:0处30个字节中,大小在[5.50]的数据的个数并将结果保存在ax中C#codedata1segmentdata1endsstack1segmentparastackdw20hdup(0)stack1endscodesegmentassumecs:code,ds:data1,ss:stack1start:movax,dat

作者: showlovelpp 发布时间: 12-31

写了一个字符串比较的小程序,结果发现无论如何都输出2,为什么?

codesegment assumecs:code org100h db'hbha$';我改成aaaa,或者kkkk,结果竟然都还是输出"2" db'hche$'start: movsi,100h movdi,105h movax,0h movds,ax 

作者: asdf12312y 发布时间: 12-30

求一汇编简单程序 100分悬赏人在线 可以马上给分。

编写汇编程序。将内存中从0x400800开始的100个字数据相加,其结果存于R3、R2中(R3中为高32位)。谢谢各位了,帮帮忙!很急。

作者: mingmingdd44 发布时间: 12-30

大哥们给我看看我的汇编程序把~~~字符串问题

DATA1SEGMENT SHUJUDB'ABCDEFG'DATA1ENDSCODESEGMENT ASSUMECS:CODE,DS:DATA1 START:MOVAX,DATA1 MOVDS,AX MOVSI,0 LOP:MOVBL,0 CMPDS:[SI],BL 

作者: showlovelpp 发布时间: 12-30