码迷,mamicode.com
首页 > 其他好文 > 详细

没有规定哪种汇编?那就用x86汇编

时间:2018-03-20 15:21:00      阅读:219      评论:0      收藏:0      [点我收藏+]

标签:语言   x86   反向   blog   最简   loop   代码   std   oop   

c语言转化为汇编语言

把下面的 C 代码转换成汇编代码。数组 a 和 b 分别 存放在以 0x4000 和 0x5000 为起始 地址的存储区内,类 型为 long(即 32 位 ) 。 把编写的汇编语言进行编译连接, 并进 行调试。
for (i=0; i<8; i++)
{ a[i] = b[7-i];
}

 

没有规定哪种汇编?那就用x86汇编,最简单代码,意思一下好了...

假设ds已指向资料段

push ds 
pop es ;对齐ds和es
mov edi,4000h  ;a数组地址起点
mov esi,5000h+7*4 ;b数组地址结束
mov ecx,8 ;次数
next:
std  ;反向
lodsd  ;读入ds:esi入eax, esi自动减4(32bit双字,即4字节)
cld  ;正向
stosd  ;eax值写入es:edi, edi自动加4(32bit双字,即4字节)
loop next

没有规定哪种汇编?那就用x86汇编

标签:语言   x86   反向   blog   最简   loop   代码   std   oop   

原文地址:https://www.cnblogs.com/sad89683/p/8608945.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!