当前位置: 首页 > news >正文

【嵌入式ARM汇编基础】-快速了解ARM汇编语言

快速了解ARM汇编语言

文章目录

  • 快速了解ARM汇编语言
    • 1、位和字节
    • 2、字符编码
    • 3、机器代码和汇编
    • 4、汇编
    • 5、交叉汇编器
    • 6、高级语言
    • 7、反汇编
    • 8、反编译

在本文中,我们将快速了解ARM汇总语言的基础。

1、位和字节

让我们回顾一下计算机的历史,人们决定发明计算机并让它们执行简单的任务。计算机不会说人类的语言——它们毕竟只是电子设备——所以我们需要一种与它们进行电子通信的方式。在最底层,计算机依靠电信号运行,而这些信号是通过在“开”和“关”之间切换电压形成的。

第一个问题是,我们需要一种方法来描述这些“开”和“关”,以便进行通信、存储,以及简单地描述系统的状态。由于有两种状态,使用二进制系统来编码这些值是很自然的。每个二进制数字(或位)可以是 0 或 1。虽然每个位只能存储尽可能少的信息,但将多个位串联在一起可以表示更大的数字。例如,数字 30,284,334,537 仅用 35 位就可以表示为:

这个系统已经可以编码大数了,但现在我们面临一个新问题:内存(或磁带)中一个数字的结束位置在哪里,下一个数字的开始位置在哪里?这个问题对于现代读者来说或许有些奇怪,但在计算机最初设计的时候,这可是个严重的问题。最简单的解决方案是创建固定大小的位组。计算机科学家为了避免错过一个巧妙

相关文章:

  • 耗时3小时,把这两天做好的爬虫程序,用Python封装成exe文件
  • Rust语言典型并发模式小结
  • Day32
  • verl multi-node train 教程
  • 创新项目实训纪实——总结与反思
  • vue中computed和watch区别
  • RabbitMQ--集群副本
  • 通过 O-RAN 传感进行异常识别和防护
  • 【橘子的AI | 每日一课】Day4!机器学习 (ML) 基础
  • Python 基础语法 (4)【适合0基础】
  • StarRocks Community Monthly Newsletter (May)
  • 线性代数(1)线性方程组的多种解法
  • 如何设计一个既提供绘图Tools又提供example_data的MCP服务器:
  • 计算机组成原理期末题目解析
  • nohz_full 参数对内核软硬锁检测机制的影响分析
  • 大模型笔记6:微调
  • Redis中的zset的底层实现
  • 【Create my OS】5 内核线程
  • 【图片识别改名】如何批量识别大量图片的文字并重命名图片,基于WPF和京东OCR识别接口的实现方案
  • srm管理系统供应商管理在线询价比价管理电子采购(java)
  • 做网站的资源哪里找/南京网站推广排名
  • 自己做的网站怎么在百度上搜到/搜索引擎关键词的工具
  • 一个网站的建设方案/云搜索系统
  • 网站做的比较好的公司吗/培训心得简短200字
  • 中国做网站的网站/优秀软文营销案例
  • 抽奖网站怎么制作/新产品推广方案策划