文档章节

初学 Delphi 嵌入汇编[1] - 汇编语言与机器语言

涂孟超
 涂孟超
发布于 2014/09/26 15:36
字数 311
阅读 10
收藏 0
非科班出身, 现在才接触汇编, 惭愧呀, 好好学!
主选课本是清华大学王爽老师的《汇编语言》. 推荐 王爽老师的汇编网

汇编语言之前是机器语言.

机器语言是机器指令的集合, 机器指令是一系列二进制数字, 计算机将之转换为一系列高低电平, 而实现运算.
在 PC 机上运行机器指令的是 CPU; 不同的 CPU 有不同的指令, 所以某种汇编语言也只是针对某系列的 CPU.

王爽老师举了一个用机器语言输出 "welcome to masm" 的例子: 00011110 101110000000000000000000 01010000 101110001100011000001111 1000111011011000 1011010000000110 1011000000000000 1011011100000111 101110010000000000000000 1011011000011000 1011001001001111 1100110100010000 1011010000000010 1011011100000000 1011011000000000 1011001000000000 1100110100010000 1011010000001001 10001101000101100010101000000000 1100110100100001 1011010000001010 10001101000101100011000100000000 1100110100100001 1011010000000110 1011000000010100 1011011100011001 1011010100001011 1011000100010011 1011011000001101 1011001000111100 1100110100010000 1101010000000010 1101011100000000 1101000000001100 1101001000010100 1100110100010000 1011010000001001 10001101000101100000000000000000 1100110100100001 11001011 我怀着对计算机先人的无比崇敬, 把它给抄下来, 也不知对也不对.

后来有了汇编, 譬如用:
mov ax,bx {在 Delphi 中相当于 ax := bx}
代替机器指令:
1000100111011000

这样更接近人类的思维; 但最终还是要有编译器把 mov ax,bx 翻译回 1000100111011000 才能被计算机接受.

本文转载自:http://www.cnblogs.com/del/archive/2008/01/23/1050049.html

共有 人打赏支持
涂孟超
粉丝 12
博文 2011
码字总数 14107
作品 0
深圳
程序员
使用C/Delphi编写ShellCode

来源:http://www.bootkitz.com/?p=93 文章谈的很好 这里说的ShellCode指的是一段x86机器码,无需重定位,在内存任何位置都可以执行的代码. 使用C/Delphi编写代码也是由其编译器特性决定的。...

BlAckEagle
2013/01/21
0
5
编译器编译原理

什么是gcc 什么是gcc:gcc是GNU Compiler Collection的缩写。最初是作为C语言的编译器(GNU C Compiler),现在已经支持多种语言了,如C、C++、Java、Pascal、Ada、COBOL语言等。 gcc支持多种...

沙米笔记
2016/05/24
1K
3
Linux 汇编语言开发指南

Linux 汇编语言开发指南 肖文鹏 (xiaowp@263.net), 北京理工大学计算机系硕士研究生 肖文鹏是北京理工大学计算机系的一名硕士研究生,主要从事操作系统和分布式计算环境的研究,喜爱Linux和P...

晨曦之光
2012/03/09
598
0
从语言层次的角度看为什么要精通C语言

谈到C语言,很多人的第一反应就是定义变量、if...else...等这些细节语法,然而更应该时刻不能忘记的就是它在编程世界中的位置。前者那些是语法细节,后者是更需要一种宏观认识,才能对它理解...

ningcaichen66
2017/09/24
0
0
Win32汇编开发环境介绍和RadAsm简明教程

Win32汇编开发环境介绍和RadAsm简明教程 现在很多朋友都在学习汇编语言,一方面汇编语言是大学计算机课程的必修课,另一方面则是为了从其它语言转到汇编语言来,无论什么原因,我认为学习汇编...

nothingfinal
2009/08/01
0
0

没有更多内容

加载失败,请刷新页面

加载更多

开发命令行工具的 12 个最佳实践

简评:设计良好的命令行应用是极富生产力的工具,本文介绍了开发命令行工具的 12 个最佳实践 CLI 是构建产品的绝佳方式,与 Web 应用不同的是它需要的时间更少,并且功能更强大。使用Web,你...

极光推送
24分钟前
2
0
DRAM和NAND Flash合约价持续走下坡路

大伙儿关心的内存和SSD产品价格在年内有望继续迎来一波减价。 据TrendForce旗下的DRAMeXchange发布的最新报告显示,本应该是购物旺季的Q4,DRAM芯片和NAND Flash芯片的合约采购价均呈现疲软的...

linux-tao
28分钟前
1
0
Vue学习记录

Vue学习记录 Vue实例 Vue实例的创建 var vm = new Vue({ // 选项}) 数据冻结 使用 Object.freeze(),这会阻止修改现有的属性,也意味着响应系统无法再追踪变化。 var obj = { foo: 'ba...

BakerZhu
28分钟前
1
0
day124-20181022-英语流利阅读-待学习

靠打零工能走上人生巅峰吗? Daniel 2018-10-22 1.今日导读 “零工经济”,一般指通过网站或 App 获得一些零碎的工作机会,从事不稳定的工作,赚取不稳定的薪水。由于从事这样的工作门槛相比...

飞鱼说编程
34分钟前
2
0
python学习笔记

马克

孙幼凌
43分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部