DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
lazarus/fpc/Free Pascal
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: hcwong1993
今日帖子: 38
在线用户: 10
导航: 论坛 -> DELPHI技术 斑竹:liumazi,sephil  
作者:
男 bios (阿贡) ★☆☆☆☆ -
盒子中级会员
2003/12/27 22:04:46
标题:
--->BORLAND的这种汇编要怎么理解与编写? 浏览:1303
加入我的收藏
楼主: function GetTypeData(TypeInfo: PTypeInfo): PTypeData;
asm
        { ->    EAX Pointer to type info }
        { <-    EAX Pointer to type data }
        {       it's really just to skip the kind and the name  }
        XOR     EDX,EDX
        MOV     DL,[EAX].TTypeInfo.Name.Byte[0]
        LEA     EAX,[EAX].TTypeInfo.Name[EDX+1]
end;
好难呀 这都能编译 BORLAND太强大了!
----------------------------------------------
按此在新窗口浏览图片
按此在新窗口浏览图片
作者:
男 flyers (flyers) ★☆☆☆☆ -
普通会员
2003/12/27 22:37:08
1楼: 那是因为汇编是计算机基本语言,而所有语言都是转换为计算机能明白的语言,也就是“编译器”的作用。而汇编是直接与计算机交流的工具。所以任何语言都明白,都能翻译汇编语言?不是吗?
----------------------------------------------
大家好,我是Flyers。

是Delphi.Net版主,小弟会尽力解决大家的问题!谢谢支持!
作者:
男 leo (leo) ★☆☆☆☆ -
盒子活跃会员
2003/12/28 0:48:27
2楼: to bios:
想想..
好久不用汇编了,仅供参考   ;p

第一句:是清零 eax 寄存器
第二句:将eax类型名字的低位字节送入 dl 寄存器中
第三句:lea 指令忘记了



----------------------------------------------
作者:
男 bios (阿贡) ★☆☆☆☆ -
盒子中级会员
2003/12/28 15:56:32
3楼: 是的呀,但如何才能学到 这个精湛的水平
看BORLAND的编译器 是没得说,你看上面的 程序
BORLAND已经把编译器改的连这样 都能编译


 寄存器[EAX] 的内容中的 还要在取出这个 .TTypeInfo
 BORLAND被 寄存器 都模拟成类来使用 
  非常晕!
----------------------------------------------
按此在新窗口浏览图片
按此在新窗口浏览图片
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v3.0.1 版权所有 页面执行78.125毫秒 RSS