c语言必背100代码 能不能用一个转换程序,把中文编程转换成代码?让傻子都会编程?
能不能用一个转换程序,把中文编程转换成代码?让傻子都会编程?
为什么许多人认为编程的困难在于语言?你真的认为有人会读汉字吗?换成汉字,你会有十几种排序算法吗?你能理解河内塔的递归吗?说一个简单,孩子的编程刮刮,多么简单,就像积木一样,那么你去看源代码的八级灵魂与刮刮决斗,你就会知道编程的难度与语言无关,只与人有关。
C语言、汇编语言、机器指令、CPU之间是怎么联系起来的?
CPU的全称是中央处理器,它是计算机操作的核心。根据所采用的不同技术,CPU分为x86、x64、arm、DSP、单片机等不同的体系结构。每种CPU上都有一组特定的指令集,通常称为机器指令。直接用机器指令编写的程序是机器语言程序。
从理论上讲,任何程序都可以直接用机器语言编写(在早期,程序比较简单),程序可以直接运行。然而,对于程序员来说,使用机器语言编程的要求很高,代码不易移植,不便于人们直接阅读。所以人们发明了一组符号,用符号来表示这些机器指令,这就是汇编语言。用汇编语言编写的程序不能直接由计算机运行。它需要一个名为汇编程序的程序被转换成机器语言才能在特定的机器上运行。
C语言比汇编语言更高级,用C语言编写的程序不能直接在计算机上运行。它要求编译器将C语言代码转换成机器语言。此过程分为几个子步骤,如下图所示。
为了使主要问题更加完善,这里添加了两个概念,链接器和反汇编。
这些目标文件也是机器指令,但它们缺少一些必要的信息,无法直接运行。链接器需要将这些文件与一些库文件和可执行文件头信息链接在一起,形成一个可执行文件(windows为PE格式,Linux为ELF格式)。
通常,在查看二进制文件(对象文件或可行性文件)时,机器指令不会直接显示,而是以汇编语言显示。这是因为在这个过程中有一个反汇编程序,它将机器指令转换成汇编语言,其功能与汇编过程正好相反。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。