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

Intel架构的基本知识

1.字节序

CPU的字节序分为LittleEndian和BigEndian。

所谓Endian,就是多字节数据在内存中的排列方式。

例如,假设有一个整数0x11223344:

LittleEndian的排列方式是,从内存的低地址开始,依次存放 0x44 0x33 0x22 0x11;

BigEndian的排列方式是,从内存的低地址开始,依次存放 0x11 0x22 0x33 0x44。

Intel架构采用LittleEndian,其他的比如SPARC、MIPS架构采用BigEndian。

2.32位环境中的寄存器

32位环境中的寄存器有以下一些。

(1)8个32位通用寄存器

8个32位通用寄存器分别为 EAX、EBX、ECX、EDX、ESI、EDI、EBP、ESP。

ESP寄存器用于保存栈指针。

某些命令使用特定的寄存器。例如,字符串命令将ECX、ESI和EDI寄存器作为操作数使用。

8个通用寄存器的主要用途如下:

EAX 操作数的运算、结果

EBX 指向DS段中数据的指针(见下文段寄存部分)

ECX 字符串操作或循环的计数器

EDX 输入输出指针

ESI 指向DS寄存器所指示的段中某个数据的指针,或者是字符串操作中字符串的复制源(source)

EDI 指向ES寄存器所指示的段中某个数据的指针,或者是字符串操作中字符串的复制目的地(destination)

ESP 栈指针(SS段)

EBP 指向栈上数据的指针(SS段)

但是,通用寄存器的用途并不限


http://www.kler.cn/news/313239.html

相关文章:

  • 我整理了一些关于【软考备考】的学习资料和大家一起分享、学习一下
  • 《 C++ 修炼全景指南:九 》打破编程瓶颈!掌握二叉搜索树的高效实现与技巧
  • STM32使用 :串口的接收与发送
  • 【RabbitMQ】RabbitMQ 概述
  • 在HTML中添加段落方法
  • 领域驱动DDD三种架构-分层架构、洋葱架构、六边形架构
  • ARM驱动学习之22 字符类GPIO
  • 智慧安防监控EasyCVR视频汇聚管理平台如何修改视频流分辨率?
  • 传输大咖44 | 云计算企业大数据迁移如何更安全高效?
  • docker-compose elasticsearch 集群搭建(用户登录+https访问)
  • Python 从入门到实战24(类的继承)
  • SCDN是服务器吗?SCDN防御服务器有什么特点?
  • 操作数据库
  • web前端-HTML常用标签-综合案例
  • kafka动态认证 自定义认证 安全认证-亲测成功
  • 【C#基础】函数传参大总结
  • 算法题总结(一)——二分查找专题
  • [深度学习]神经网络
  • 基于单片机热敏电阻PT100温度控制系统设计
  • SQL编程题复习(24/9/19)
  • 安装Kali Linux后8件需要马上安排的事
  • 门控循环单元(GRU)
  • MySQL高阶1873-计算特殊奖金
  • 【JS】ESMoudle机制与符号绑定
  • 传知代码-多示例AI模型实现病理图像分类
  • 加密与安全_HTTPS TLS 1.2 连接(RSA 握手)的整个过程解读
  • 前端面试CSS常见题目
  • 机器学习之非监督学习(四)K-means 聚类算法
  • 【Docker Nexus3】maven 私库
  • JAVA8新特性——Optional