1606_PC汇编语言_简介以及8086系列的平台信息梳理

news2024/11/17 19:52:35

         全部学习汇总: GreyZhang/g_unix: some basic learning about unix operating system. (github.com)

         看得出来外国高校教育中的质量,一个课程涉及到的资料特别庞大。我感觉掌握起来比较缓慢吃力,当然,这不排除语音障碍带来的影响。但是,对等的中文页面看起来估计也是很有挑战度的。这是我学习MIT的OS课程的时候一个中间的参考资料,主要是PC汇编语言相关的。这一次,整理其中的部分信息。

1. 高级的OS基本上都适用虚拟内存,有内存保护。

2. 之前的书籍中对于保护模式下的编程介绍很少,这是这本书编写的一个很重要的原因。

3. 这里顺带介绍了一个windows以及linux上都有的汇编工具NASM。

         这一个章节基本上可以不用看,主要是介绍十进制、二进制以及十六进制的。之前看过的很多计算机相关的资料中都有,这也算是能够让我快速通关的一小点积累了。

         这里算是掌握了一个新的常识性知识,以前只知道ASCII码的编码是一个字节的信息,这里增加了Unicode的编码所占存储空间信息:一个字,也就是两个字节。

1. 这里用音乐类比了计算机的程序运行节拍,我觉得非常形象。很多时候,我觉得国外的资料读起来有意思就是因为多了很多这样的小细节,让人觉得整本书里面不仅仅有工程思想,也有艺术情怀。

2. 8088以及8086只支持16bit的实地址。到了286的阶段,支持了保护模式。而386开始,支持增加到了32bit,也就有了现代的通用处理器的原型。

         这里简单介绍了一下8086的架构以及寄存器体系,大学的时候没少受到这样的资料的折磨。但是,后来的工作经验告诉我大可不用怕,其实这个东西让他在我们脑海中留下一点影子即可,不用拼自己的记忆力。等我们在实战中不断与之打交道之后,他们会自然在我们的记忆中沉淀。

1. 实模式的机制我是看懂了,但是为什么会设计一个1MB空间的限制?这个我有点没理解,是因为当时制造出来的产品普遍达不到这个水准吗?

2. 多次看到的偏移地址或者分段信息限制为64K,根本原因其实是在于16bit的寄存器表达能力上限就是64K。

1. 为什么会出现地址重叠?其实很好理解,因为最小的段偏移量是16,但是offset又可能大于16,最大64K,因此重合很正常。

2. 不同于实模式,保护模式下段不再固定的物理地址上,甚至可以不在内存中。运行的过程中,会有磁盘与内存之间的数据交换。看到这里,感觉这样是否会增加磁盘的寿命损耗呢?其实答案是很肯定的!除此之外,甚至还会有效率上的损失。

3. 由于CPU依然是16bit,因此之前的64K限制其实是还存在。

         升级后的32bit,保护模式其实是改进了段分配机制,改成了页,而每一个页大小是4K。这种升级,除了增加了支持的内存大小之外,还在一定程度上减少了swap的产生。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/184263.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【选择IT培训机构时,我们应该注意的点有哪些?】

之前写过一篇关于是否还有靠谱IT培训机构的内容,很多小伙伴也发表了各自不同的看法,有赞同,有反对,还有讽刺的。其中不免有培训的受害者,想要培训的人,恶意抹黑培训的人,也有少部分培训的受益者…

jenkins docker 部署-02

镜像说明 镜像ponylee/jenkins-centos7:v2.0基于镜像ponylee/jenkins-centos7:v1.0(镜像ponylee/jenkins-centos7:v1.0基于jenkins/jenkins:lts-centos7-jdk8, 添加 git maven jdk8 等java部署常用的工具。同时改变运行用户jenkins为root,放大权限&#…

【GD32F427开发板试用】基于GD32F427的纳姆轮小车

本篇文章来自极术社区与兆易创新组织的GD32F427开发板评测活动,更多开发板试用活动请关注极术社区网站。作者:Ljfly 目标: 做一个四轮驱动小车,实现通过GD32F427控制小车前进,后退,左移,右移&a…

一起自学SLAM算法:12.1 ros-navigation导航系统

连载文章,长期更新,欢迎关注: 可以说ros-navigation是ROS系统中最重要的组件之一,绝大部分自主移动机器人的导航功能都是基于ros-navigation导航系统实现的。下面将从原理分析、源码解读和安装与运行这3个方面展开讲解ros-navigat…

一篇五分生信临床模型预测文章代码复现——FIgure 9.列线图构建,ROC分析,DCA分析 (一)

之前讲过临床模型预测的专栏,但那只是基础版本,下面我们以自噬相关基因为例子,模仿一篇五分文章,将图和代码复现出来,学会本专栏课程,可以具备发一篇五分左右文章的水平: 本专栏目录如下: Figure 1:差异表达基因及预后基因筛选(图片仅供参考) Figure 2. 生存分析,…

拉伯证券|2023年净利“超十倍潜力股”揭秘

本年成绩有望暴增的个股有哪些? 2022年各首要指数调整较大,但2023年开年以来A股体现继续强势,三大股指到目前涨幅均超5%,创业板指更是大涨超10%,医药、消费、科技等赛道轮番体现。 外资也对A股进行新一轮的加仓调仓&a…

Redis学习笔记:慢查询,Pipeline,事务,乐观锁

本文是自己的学习笔记。主要参考资料如下: 马士兵 1、Redis的慢查询1.1、慢查询的相关参数1.1.1、设置阈值1.1.2、慢查询日志存储长度1.1.2.1、慢查询日志解析1.2、生产环境下慢查询的配置2、Pipeline2.1、简单的pipeline代码示例2.2、使用Pipeline的注意事项3、事务…

自己写的功能简单的 http server 文件下载服务器 http服务器

最近在项目中遇到过 通过ssh登录到某台机器A ,然后 又从A机器上ssh到机器B 而B机器是没有外网功能,这个时候如果想从B机器上传文件到A机器上就很不好办了 由于B机器没有外网 很多工具软件都没有 原来是是用python 起的http服务器 但是B机器没有安装py…

Black Basta 勒索软件利用 QakBot 进行分发

自 2022 年 4 月投入运营以来,Black Basta 对全球近 50 家组织发起了攻击。攻击者使用了“双重勒索”策略,如果受害者不交付赎金就会被公开数据。 勒索团伙会不断改进攻击方式,最近研究人员发现 Black Basta 与银行木马 QakBot 勾结在一起&a…

nginx+uwsgi部署django项目

1. python3.9环境安装 安装依赖 yum install zlib zlib-devel libffi-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make wget下载源码 官网地址 wget https://www.python.org/ftp/python/3.9.6/Python-3.9.6.tar.xz解压 &…

maven的下载与安装

前言 本篇文章是基于win11系统下载安装Maven的教程。 一、 Maven介绍 1. 什么是Maven? Maven是基于项目对象模型(POM project object model),可以通过一小段描述信息(配置)来管理项目的构建,报告和文档的软件项目管…

【FreeRTOS】详细讲解FreeRTOS中任务管理并通过示例讲述其用法

任务状态 在FreeRTOS中一个任务经创建后会有多个状态,通常可分为以下几种状态: 就绪态:新创建的任务一般处于就绪态。处于就绪态的任务表明其已经存在于就绪列表中,其已经具备所有的任务执行需要条件,只等待调度器调度…

社科院杜兰大学金融管理硕士项目——美丽的风景,在你前行的路上

一个人的强大源于内心的坚定,内心强大的人,是平和的、自信的、乐观的。在工作中也是奋发图强、积极向上的,就像选择来社科院与杜兰大学金融管理硕士充电,为职场发展注入能量,为未来发展奠定基础。近些年来,…

Centos7离线安装MySQL

使用tar.gz文件安装MySQL 1、下载MySQL离线包 下载地址:https://downloads.mysql.com/archives/community/ 根据需要下载对应版本tar.gz文件,下载完成后上传到服务器 2、解压tar.gz文件 tar -zxvf mysql-5.7.37-linux-glibc2.12-x86_64.tar.gz等待解…

【计算机网络】TCP/UDP协议

传输层协议 负责数据能够从发送端传输接收端,这篇文章主要介绍TCP和UDP协议 UDP协议 学习UDP协议需要掌握,UDP协议如何做到封装和解包的,如何做到向上交付的(分用问题) UDP协议格式 封装:添加定长报头 解包&…

用Python掌握QQ群聊天记录数据分析

当你打开QQ群时,你是否想过如何用Python提取里面的数据呢?随着社交媒体的兴起,QQ群成为了人们交流的重要平台,而提取这些数据可以帮助我们了解用户喜好和行为。那么,如何使用Python提取QQ群数据呢? 这里做了一套脚本用于提取QQ群的消息并进行一些简单的处理。 其中包括…

IB、AP、A-LEVEL,哪种最适合自己呢?

刚开始了解新加坡留学的家长和学生,一定看到这些就觉得头大吧。当下国际学校里的课程可以说五花八门,在选择之前一定要弄清楚这些名词背后的含义…… IB是什么 IB(International Baccalaureate)全称为国际预科证书课程&#xff0c…

Linux下rabbitmq的集群搭建

1 修改 3 台机器的主机名称 在三台服务器分别执行 hostnamectl set-hostname master hostnamectl set-hostname node01 hostnamectl set-hostname node022 配置各个节点的 hosts 文件 vim /etc/hosts 192.168.5.6 master 192.168.5.7 node01 192.168.5.8 node023 确保各个节…

【工具】苏格拉底式诘问法解决工作问题

目录一、什么是苏格拉底式诘问法二、苏格拉底式诘问法的细分三、在实际工作中运用苏格拉底式诘问法解决问题一、什么是苏格拉底式诘问法 苏格拉底式诘问法(Socratic Elenchus)是苏格拉底式提问的一种,也叫做"诘问法"。它是由古希腊…

OpenCV-PyQT项目实战(2)QtDesigner 和 PyUIC 快速入门

欢迎关注『OpenCV-PyQT项目实战 Youcans』系列,持续更新中 OpenCV-PyQT项目实战(1)安装与环境配置 OpenCV-PyQT项目实战(2)QtDesigner 和 PyUIC 快速入门 OpenCV-PyQT项目实战(3)信号与槽机制 …