博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
程序的机器级表示
阅读量:6105 次
发布时间:2019-06-21

本文共 463 字,大约阅读时间需要 1 分钟。

Linux使用了平坦寻址方式(flat addressing),使程序员将整个存储空间看作一个很大的字节数组。操作系统负责管理虚拟地址空间,将虚拟地址翻译成实际处理器存储器中的物理地址。
汇编代码是机器代码的文本表示。
指令有一个或多个操作数,值是出执行一个操作中要引用的源数据值,以及放置结果的目标位置。操作数分3种类型:
   
立即数(immediate),即常数值。
   
寄存器(register),表示某个寄存器的内容。
   
存储器(memory)
引用,根据计算出来的地址,访问某个存储器位置。
算术和逻辑操作主要分为4组:
    
加载有效地址:从内存读取数据到寄存器。
    
一元操作:只有一个操作数, 既是目的也源,操作数可以是寄存器,也可以是内存位置。如自增操作。
   
 二元操作:第二个操作数既是源又是目的。如赋值运算符x-=y。
    
移位:先给出移位量,第二项给出要移位的数。
用 jump 指令 可以改 变一组 机器代 码指令 的执行 顺序。

转载于:https://www.cnblogs.com/lolau/p/9905954.html

你可能感兴趣的文章
Atitit.软件开发提升稳定性总结
查看>>
lftp查看文件时间与登录服务查看文件时间相差8小时
查看>>
[leetcode]Next Permutation @ Python
查看>>
JAVA(2)——JDBC
查看>>
php heredoc 与 nowdoc
查看>>
DBA_Oracle DBA常用表汇总(概念)
查看>>
第30周二
查看>>
Log4cpp介绍及使用
查看>>
数学类杂志SCI2013-2014影响因子
查看>>
实用的树形菜单控件tree
查看>>
最近公共祖先(lca)
查看>>
【WP 8.1开发】文件选取器的使用方法
查看>>
Java实现BASE64编解码
查看>>
【Java】java基本知识
查看>>
之前学习wordpress的几张图片
查看>>
RT-Thread下的串口驱动程序分析【转载】
查看>>
UITableView的UITableViewStyleGrouped
查看>>
ecshop中getAll ,getOne ,getRow的区别
查看>>
Apple 企业开发者账号申请记录
查看>>
ecshop后台权限增加
查看>>