汇编语言的"多"层结构与理解----希望讨论

hswxf 2004-11-10 06:03:02
汇编语言是一门精确的描述语言,描述对象是与之对应的系统平台。系统平台的精确行为可以由汇编语言一一对应出来。汇编语言的作用也就是完成这一平台的细节控制与影响。

  从很简单的4位、8位汇编开始,我们是可以很直观地看到汇编对硬件的控制,以及对系统的构造(软件)。在16位汇编开始,在以IBM为典型固化语言方式的发展中,一些常见的汇编级模块被封装在如ROM等器件中,成为硬件的一部分或说成为一个功能,这时的汇编语言是我们绝大多数人熟悉的形式,通过对这些典型模块的(功能)调用,就可以完成对系统平台的控制与反馈。

  16位的汇编模式,是最常见的通用教学用汇编语言,它的一个主要特点是对硬件的控制比较直接,从指令中我们可以理解到8086体系的工作原理与控制方式。同样在简单化与方便的原则下我们也可以产生一些工作软件,甚至形成对硬件与已有资源(实际上是相对的)控制,也就是说形成操作系统概念。这不是很难的。

  32位(24位)模式下的结构系统(80X86)发生了一些变化,主要是针对8086下的数据保护与管理增加了一些功能性指令,主要是在16位指令结构上增加一个高位(16位等)的“保护”数据区,原则上访问这些指令必需与这些“保护”区的数据一致才行;因此在32位指令(不是16位了)中,除了新增加的,对一些“兼容(16位下的)”指令访问,要注意它的“位置”(一般在低16位上)以及对“保护区”的访问(数据结构终于出现在汇编中了);这一阶段的汇编语言还是具有16位的特点(对硬件理解要求较高、可以直接形成对操作系统概念)。但这一概念受到另一个商业化概念的影响很大。

  WIN32下的汇编语言,在特征上与传统的(上述)有了一些不同,典型的有六处(本文较长,略)。我们所说的系统平台是一个相对的概念,它的最低层应该是以硬件为核心的、以固件为核心的,以一个较具体的操作系统(软件,如WINDOWS等)为学习对象,对我们的基础并没有多少好处,理由有五个(同上,略)。但它在一些流行的软件如人WINDOWS中具有一定的方便性,也就构成了一个极为典型的汇编语言模式,其实它所直接描述的对象是一个具体的操作系统,而不是一个低层资源,它的一些概念被巧妙地更换了(如BIOS固件的发展被认为与如API具有同等意义等),这样一个很流行的软件(操作系统)成就了一种独特的汇编语言,它与一些源于概念驱动的语言(如C等)表现的相当一致(本人分析了它的7个特征得出的结论)。当然,这只是一门存在于一个操作系统内的语言,它的极品表现是ILASM,一个在.NET下的汇编语言。
 
  可以说,只有所谓实模式(16位)与保护模式(32位)下的汇编,让我们多少还能想到经典的魅力,而对流行下的汇编概念,只能说好玩就玩玩,它的确可以是汇编类的,但不经典!
  
  谁能说郭敬明就不是个“坐家”,我女朋友看他写的玩艺就是费手帕,还说:比巴金还厉害!
  晕!----你敢说女朋友没眼光---死你的吧!

如果兴趣,可以给出全文(有图)
...全文
483 45 打赏 收藏 转发到动态 举报
写回复
用AI写文章
45 条回复
切换为时间正序
请发表友善的回复…
发表回复
W32API 2004-12-15
  • 打赏
  • 举报
回复
看来这里对这个问题的关心程度并没有我预估的那么高。楼主自己却也把自己的意思用一种针对应用的方式去表述。

我却认为,编程仅在于我们使用何种工具和方法去面对何种环境而已。了解一个 case 所具有的这两项特征,我们便能以最高的效率得到最想要的结果。或许你会说我太势利,我承认这点,这本就是我所需要的。空想并不等于实现。

这个帖子就暂时还留着几天罢。
W32API 2004-11-24
  • 打赏
  • 举报
回复
其实我只是不认同 黄山兄 “科学就是逻辑” 这个观点而已。其他都是废话
说“逻辑是科学的一部分”的话我就没有任何意见了
CGSK 2004-11-23
  • 打赏
  • 举报
回复
啥也看不懂。
比较同意 hswxf(雪山爆发)的观点。
既不完全相信知识是先天的,也不完全同意知识是由经验得来。
我觉得用人脑去琢磨人脑是怎么工作的不太现实。
用人脑去实现所谓的面向语言的工具也不可想象。
这些都是上帝的工作。你都作了,上帝不是该下岗了。

哈哈,我随便胡说八道的。
hswxf 2004-11-23
  • 打赏
  • 举报
回复
W32API()说的很有想象,嘿嘿!我也无法说清你的问题,
但现在我想看看,汇编的层次的确还是那样,但在高层汇编中,汇编离开原来的位置(也就是经典吧)远了不少,如果这种远离是正常的话,那么汇编就肯定会失去它的控制作用,接口也成为一个软件级的接口,实际上,软件上的接口现在正在形成一个大的描述方式---协议。所以,汇编应该如它的英文含意一样,在汇集与收集着不同(实际是一种经验),然后再由高级语言去总结应用,体系的描述应该还是由汇编来完成。
mgan 2004-11-22
  • 打赏
  • 举报
回复
科学的延伸在于发展


希望HSWXF能有更高的成就

带出更多象你优秀的人


心雨楼 2004-11-22
  • 打赏
  • 举报
回复
在蔓延中不断提升

改变源自对未知的探索

多少年前和多少年后

一切都会有所改变
cwanter 2004-11-19
  • 打赏
  • 举报
回复
有点头晕~
lovessm 2004-11-19
  • 打赏
  • 举报
回复
mark.
W32API 2004-11-17
  • 打赏
  • 举报
回复
哎,哲学的咚咚我是不想考虑的,你可以认为你类似电脑,但不要跟我说你里面是电路。

汇编是什么?汇编在 CPU 内部还是要经过译码器转换成微代码,也就是说汇编(机器码)本身也是要经过翻译才能执行的。
就算楼主所说的把汇编固化在主板上的事实形成,你是否就不用在面对这个新的接口?只是原来的接口是 CPU 内部的译码器,现在多包了一层接口而已。你都可以使 CPU 直接支持 JAVA 的字节码,但是你的处理器的应用范围呢?处理器的复杂度怎样?
不论如何,我们都必须通过一个处理器的接口才能使用处理器,不管这种接口是以什么方式提供(进行)。

不要再讨论逻辑了罢,这些东西是扯不清的。我说的那些问题好像你也没有给出什么合理的逻辑。很多东西也是现在的科学无法解释的。
hswxf 2004-11-16
  • 打赏
  • 举报
回复
嘿嘿!
科学是逻辑的,或是实验可验证的,这不会W32API不同意吧!
汇编的发展与其说是基于指令的,我更多的是要对寄器组与算子(法)电路的应用,但这个话太累了,还是让我们多考虑汇编吧,前些日子有个自称INTEL的工程师说要让汇编消失(固化在主板上),但现在好象没有影子,呵呵!是不是商业上一个行为呀
Areslee 2004-11-16
  • 打赏
  • 举报
回复
楼上的表来讨论哲学,偶们素俗人,偶们只讨论眼前的问题
平心而论,偶认为偶的脑子的细胞运转时也是类似于电脑的
W32API 2004-11-16
  • 打赏
  • 举报
回复
呵呵,楼主,你应该会计算 1+1 的结果,但是不要忘记我们的脑袋里面没有电路。你计算 15*15 的结果是否也是移位加?
不要低估科学。牛顿力学也曾经是最完善的。
科学从来就不等同于逻辑。科学从无知开始,却不知怎样中止。
不要人为的给科学画上终点, BILL 也曾经说 64M RAM 就足够人们的应用所需。这类笑话很多的,我相信你知道的也很多。
或者你告诉我们光子是什么?存在形式?质子呢?你看见了没?显微镜下看见的是镜片呢?还是他们本身?抑或是这中间存在的其他物质?电子的轨道为什么会被形容为云,要知道现在的运动理论是没有瞬间移动的,那么在电子从这个地方迁移到下一个地方这个过程中,它怎么运动?所谓大爆炸理论所说的奇点是什么?存在形式?纯能量么?它有多大?它会爆炸,为什么会选择这个时候,而不是几十亿年前,或几十亿年后?什么原因促使它爆炸?
我不知道,我对此也无能为力。。。我等,直到我不能等为止,但是我知道在我等待的过程中,我可以知道的比现在多。
hswxf 2004-11-15
  • 打赏
  • 举报
回复
CPU走的路一定是电的,这理由有二:
1.实现数学逻辑的最完整技术,还是依赖电磁学基本方程与数学对电学的模式的强有力描述。如果说力学的数学化成就了机械化时代,那么,电磁学的数学化就是计算机等的微电子化。现在物理学(我不相信纯粹的生物学等计算机),还没有另一个不同的层次(类别)的数学化基础。计算机的前提是电子计算机。
2.处理器是不是要生物化,这一点我想是不可信的(至少现在),因为那在说我们产生着一种不可控制技术,生物技术的智能化,本质上是一种不可控的。(呵呵!哲学化了)
当然,这只是我的想法!如有一天有非电处理器,呵呵!请楼上吃点红烧生物处理器(玩笑)
zelor 2004-11-15
  • 打赏
  • 举报
回复
按照楼主的意思,CPU要玩出新花样的前提是物理学发生一次新的数学化。我对电子计算机的信心又增加了:)
jdzzy 2004-11-15
  • 打赏
  • 举报
回复
这篇文章让我最近的一些想法有了一个感性的上的提高!希望一直讨论下去,我也要加紧学习!
顺便提提下前些日子我在学习编译,汇编,一点操作系统,还因为在学编译的自动机的时候有疑团所以买了一本<计算机理论导轮>,尽量看了下来.
我是个计算机专业大三的学生,在大家都热忠于学习.net或什么delphi.java啊,我却在这些他们看来"基础,幼稚"的东西里不能自拔!

引:实现数学逻辑的最完整技术,还是依赖电磁学基本方程与数学对电学的模式的强有力描述。如果说力学的数学化成就了机械化时代,那么,电磁学的数学化就是计算机等的微电子化。现在物理学(我不相信纯粹的生物学等计算机),还没有另一个不同的层次(类别)的数学化基础。计算机的前提是电子计算机。
------很赞同大哥的观点,这种想法前些日子已经在我心里有了点端倪!呵呵
W32API 2004-11-15
  • 打赏
  • 举报
回复
话说回来,谁知道以后的处理器还是不是电路的。
Areslee 2004-11-15
  • 打赏
  • 举报
回复
标准还是要有扩展性地余地才是好的:)
jdzzy 2004-11-15
  • 打赏
  • 举报
回复
我坚持走底层路线!!!让我感觉计算机科学如此像我想象的那样神秘,神奇!
高层的东西是another story 了!
Areslee 2004-11-15
  • 打赏
  • 举报
回复
目前很多所谓的生物电脑的概念从本质上来说还是基于电磁学基础的
hswxf 2004-11-13
  • 打赏
  • 举报
回复
楼上好!是的,只能这样说,做智能控制,主要是散列识别,不好多说了,主要是水平不够.
你说的也对,是太简单了,也许是我心急,老头去基地开会了,嘿嘿!我想用一个月建立一个能够讨论出来的贴子(协议),不断补充与发展,别象现在的一些所谓标准,看起来吓人,没多久又变了,嘿嘿!还是一个协议!
加载更多回复(25)

21,458

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧