非科班出身, 现在才接触汇编, 惭愧呀, 好好学! 
主选课本是清华大学王爽老师的《汇编语言》. 推荐 王爽老师的汇编网


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

机器语言是机器指令的集合, 机器指令是一系列二进制数字, 计算机将之转换为一系列高低电平, 而实现运算.
在 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 才能被计算机接受.

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

  1. 初学 Delphi 嵌入汇编[3] - 第一个 Delphi 与汇编的例子

    前面知道了一个汇编的赋值指令(MOV), 再了解一个加法指令(ADD), 就可以做个例子了. 譬如: ADD AX,BX; 这相当于 Delphi 中的 AX := AX + BX; 另外提前来个列表 ...

  2. 初学 Delphi 嵌入汇编[9] - asm 可以代替 begin

    //可以用 asm 代替 begin function Fun(x: Integer): Integer; asmmov eax, xinc eax end; {汇编中的 inc 指令和 Delphi ...

  3. 初学 Delphi 嵌入汇编[12] - 在汇编代码中可以直接使用 Result

    为什么80%的码农都做不了架构师?>>>    //在汇编代码中使用 Result function Fun(x: Integer): Integer; asmmov ecx, &a ...

  4. 初学 Delphi 嵌入汇编[18] - SHL 与 SHR

    为什么80%的码农都做不了架构师?>>>    汇编中的SHL(左移).SHR(右移)命令也是和 Delphi 一样的. varByteNum: Byte; begin//右移 sh ...

  5. 初学 Delphi 嵌入汇编[26] - 大小写字母转换

    //小写字母转大写字母 function Fun1(C: Char): Char; asmsub C, 32//sub C, 'a'-'A' {竟也可以这样写} end;//大写字母转小写字母 fun ...

  6. 初学 Delphi 嵌入汇编[10] - 函数返回值与寄存器

    返回类型 寄存位置 Char.Byte AL 寄存器 SmallInt.Word AX 寄存器 Integer.LongWord.AnsiString.Pointer.Class EAX 寄存器 Re ...

  7. 初学 Delphi 嵌入汇编[29] - 寄存器所能接受的数值范围

    譬如 EAX AX AH AL 四个储存器, 真实存在的其实只有一个 EAX, AX AH AL 不过是不同的访问方式. 11111111 11111111 11111111 11111111 : E ...

  8. 初学 Delphi 嵌入汇编[27] - XCHG 指令: 交换寄存器的内容

    为什么80%的码农都做不了架构师?>>>    //XCHG 指令: 交换寄存器的内容 varx,y: Integer; beginx := 1; y := 9;asmmov eax ...

  9. 初学 Delphi 嵌入汇编[13] - 地址参数用 [] 取值

    为什么80%的码农都做不了架构师?>>>    //关于地址参数(var/out) function Fun(var x,y: Integer): Integer; asmmov e ...

最新文章

  1. 【疑难杂症】vue npm run build的时候遇到Module build failed: Error: No ESLint configuration found.报错提示咋办呀?
  2. SpringRestTemplate用法详解
  3. Python Socket编程基础篇
  4. 21张让你代码能力突飞猛进的速查表(神经网络、机器学习、可视化等)
  5. android 组装xml,Android中组装xml文件内容
  6. macos自带java_在 MacOS 上安装 Java - Java 入门教程
  7. Python_面试题
  8. python 如何定义字典_python dict如何定义
  9. 9-[记录操作]--数据的增删改,权限管理
  10. 如何运行ruby代码
  11. (十三) 深入浅出TCPIP之setsockopt参数详解
  12. Python字符串常用函数使用详解(内附详细案例)
  13. iOS中如何添加自定义的字体库
  14. mysql+索引+rebuild_(solr系列:五) solr定时实时重建索引和增量更新
  15. 仿淘宝首页产品分类菜单栏的设计
  16. 陕西省地形图与陕西地形高程数据DEM下载
  17. [Android] [逆向工程] 安卓逆向入门篇
  18. unity NOPI 创建word文档
  19. 爬取mzitu图 线程 进程
  20. 用requests库和BeautifulSoup4库爬取新闻列表

热门文章

  1. 同是iPad退差价却不同?
  2. 程序猿修仙之路--算法之直接插入排序
  3. (原創) 如何讓Linux開機時,不要在圖形介面顯示開機訊息? (OS) (Linux) (CentOS)
  4. 如何降低数据中心宕机事件的影响
  5. 《走进git时代系列一》 你该怎么玩?
  6. 使用PHP读取和创建txt,doc,xls,pdf类型文件
  7. Window.Open() 和 window.showModalDialog()参数
  8. 二十年最强悍病毒排行榜
  9. 分组合计且排序和显示名称
  10. js作用域及作用域链概念理解及使用