【200分】易语言的书上说能直接写出机器代码,还说能编译与操作系统无关的程序。请问如何实现?

2024-12-13 00:52:53
推荐回答(5个)
回答1:

所有编程IDE的祖先:汇编,几乎由他完成了所有开发环境的编译,比如C++,VB,包括易语言的IDE(当然易语言是由C++,汇编,Java,Dephi和Ruby混合编译出来的),windows的程序并非就不是exe,其实没有你想的那么麻烦。
一个windows的系统的核心是由许许多多的像动态链接库,数据库,由STSTEM调用的应用程序,外加一个可以直接与之沟通的CMD命令提示符构成的。这里的CMD便是你所谓的DOS,不过是映射窗口罢了。Windows的基础语言VB中包含了DOS命令的调用功能,那就是shell,这也是微软公司最实际开发给用户所用的编程语言。
操作系统的基础就是主板上的BIOS,它掌控了启动项的保存与去留。所谓的操作系统就是指的从BIOS传递启动参数而启动的一个文件,它是没有格式的,但它具有一个核心,就是API,所有的程序都围绕着这几百个被微软所开放的应用接口运行着。
你看到的dos,他没有桌面,是因为没有explorer.exe这是微软后来才开发的,它就用了API建立了一个Timer(就是易语言的时钟一样的东西)所以才有的这种循环启动的效果。
与操作系统无关的程序其实是应该这样定义:非系统工具的软件,就是像MP3播放器,图片处理等等。程序就像生命体必须要依附在操作系统上才能运作,否则没有像API这样的东西提供支持,它将变得没有意义。
我们现在来说一下你问的windows的程序后缀名的问题,windows的程序都是*.exe,脚本是*.vbe和*.vbs,没有别的格式,甚至*.bat都不是windows的基础格式。唯一差别是windows应用程序是由STSTEM运行,自己开发的是Administartor运行。其他操作系统比如MAC用的就是dmg,安卓就是apk,他们都是ARM构架的和X86构架,基于linux写成的操作系统,linux本身是无格式的,可能就是你说的那种与操作系统无关的程序吧,易语言的确可以编写这个。

最后说一下程序的本质,比如apk,api等格式,就是将需要的文件压缩至一个压缩包里,附有一个描述文件告诉机子把它放到哪里,只不过是把压缩包后缀名换了而已,用7z就能将之解包。

回答2:

你的理解有误
写机器代码就是汇编
E语言支持汇编代码的编写
也可以写linux下的程序
操作系统的编写 要全面知道系统的运行原理 CPU 内存 硬盘等等的操作

回答3:

易语言采用独立的高质量编译器,直接编译成机器语言(也就是01),然后再封装

操作系统不是你想写就可以写 他涉及到很多东西 这些 东西易语言是做不到

比如说 易语言可以写驱动 但是 他写出来的驱动 常常会发生很多莫名其妙的错误
.exe是可执行文件的后缀

与操作系统无关的程序的程序请问是什么程序还能用易语言写简直是天方夜谭

...
..
.

回答4:

易语言她只是一个工具,至于用它都能写出什么样的软件,主要在于个人的能力,越复杂的软件代码就越多,里面牵扯的知识就越多,至于说编译与操作系统无关的程序,这个就有点偏离规则了,在一个就是你对这些问题的理解上存在问题。一定要多掌握一点关于系统和编程的基础知识,否则谁也帮不了你。

回答5:

易语言采用独立的高质量编译器,直接编译成机器语言