计算机指令

软件设计师笔记---中央处理单元CPU

允我心安 提交于 2020-03-30 08:41:26
一、CPU的组成   CPU主要由运算器、控制器、寄存器组和内部总线等部分组成。    二、CPU的功能  1、程序控制。     CPU通过执行指令来控制程序的执行顺序,这是CPU的重要功能。 2、操作控制。     一条指令功能的实现需要若干操作信号配合来完成,CPU产生每条指令的操作信号并将操作信号送往不同的部件,控制相应的部件按指令的功能要求进行操作。 3、时间控制。     CPU对各种操作进行时间上的控制,即指令执行过程中操作信号的出现时间、持续时间及出现的时序都需要进行严格控制。 4、数据处理。     CPU通过对数据进行算术运算及逻辑运算等方式进行加工处理,数据加工处理的结果被人们所利用。所以,对数据的加工处理也是CPU最根本的任务。 三、运算器   1、运算器主要功能:     (1)执行所有的算术运算,如加、减、乘、除等基本运算及附加运算。     (2)执行所有的逻辑运算并进行逻辑测试,如与、或、非、零值测试或两个值的比较等。   2、各组成单元     (1)算术逻辑单元。 ALU是运算器的重要组成部件,负责处理数据,实现对数据的算术运算和逻辑运算。     (2)累加寄存器(AC)。 AC通常简称为累加器,它是一个通用寄存器,其功能是当运算器的算术逻辑单元执行算术或逻辑运算时,为ALU提供一个工作区。    (3)数据缓冲寄存器(DR)

第一章计算机系统概论习题

☆樱花仙子☆ 提交于 2020-03-28 00:36:53
1:单选题 冯.诺依曼计算机工作方式的基本特点是( )。 A: 程序一边输入计算机一边执行 B: 程序直接从磁盘读到CPU执行 C: 程序中的指令和数据先装入内存,执行时按地址访问并自动按序执行程序 D: 程序自动执行,而数据手工输入 2:单选题 以下是关于冯诺依曼结构计算机中指令和数据表示形式的叙述,其中正确的是( )。 A: 指令和数据可以从形式上加以区分 B: 指令以二进制形式存放,数据以十进制形式存放 C: 指令和数据都以二进制形式存放 D: 指令和数据都以十进制形式存放 3:单选题 下列是有关计算机中指令和数据存放位置的叙述,其中正确的是( )。 A: 指令和数据任何时候都存放在外存中 B: 程序被启动前指令和数据都存放在外存中,而启动后指令和数据被装入内存 C: 指令存放在内存中,数据存放在外存中 D: 指令和数据任何时候都存放在内存中 4:单选题 以下有关程序编写和执行方面的叙述中,错误的是( )。 A: 可用高级语言和低级语言编写出功能等价的程序 B: 高级语言和汇编语言源程序都不能在机器上直接执行 C: 编译程序员必须了解机器结构和指令系统 D: 汇编语言是一种与机器结构无关的编程语言 5:单选题 以下给出的软件中,属于系统软件的是( )。 A: Windows XP B: MS Word C: 金山词霸 D: RealPlayer 6:单选题 冯。诺依曼计算机中

linux学习笔记一

試著忘記壹切 提交于 2020-03-27 09:00:13
一 1.X86计算机体系是冯-诺伊曼体系,包括现在很多智能设备。 2.计算机主要由CPU(运算器和控制器),存储设备,输入输出设备。 3.运算器提供运算能力,但是只是二进制运算 控制器是协调各部件 4.组件之间的连接 以及和存储的连接 是通过总线(bus) 5.总线分为 控制总线 数据总线和地址总线 6.CPU指令集 分为特权指令和普通指令 CPU物理上分为4个环,最中心的是环0,依次外为环1,环2,环3 特权指令就是在环0上,普通指令在环3上 只有操作系统才有权限调用特殊指令 7.从底层到高的语言分别是 机器语言----汇编语言----高级语言 8.为什么要有操作系统? 生产厂商众多,所生产的硬件规格和接口也各自不同,而操作系统的作用就是将底层不统一的规格接口,向上统一成一个标准的规格和接口。 操作系统 Operating System 简写OS 9.编程层次: 硬件规格 系统调用 库调用 10.什么是程序运行? 该程序占据了CPU一部分性能,然后逐条自上向下的运行代码 11.用户接口 图形用户接口 GUI 命令行接口 CLI 用户接口程序:用户通过这个程序,调用接口 接口格式 ABI 应用编程接口 API 12.CPU的架构类型:X86 X64 ARM M68000 POWER 13.操作系统有 Windows Linux Unix GNU组织发起 软件自由运动 GNU

第二章 寄存器基础概念

喜你入骨 提交于 2020-03-24 02:28:53
第二章 寄存器 1. 一个典型的 CPU 由运算器,控制器,寄存器等器件组成。 内部总线实现 CPU 内部各个器件之间的联系。 外部总线实现 CPU 和主板上其它器件的联系。 2.8086 是 Intel 系列中 16 位微处理器,地址总线 20 位。 8086 有 14 个 16 位寄存器: AX , BX , CX , DX ,是通用寄存器 SI , DI , BP , SP ,是基址和变址寄存器 CS , SS , DS , ES ,是段寄存器 IP , FLAGS 是指令指针和标志寄存器。 3. 通用寄存器:一个 CPU 有多个寄存器,用来存放十六位一般性数据 下面以 AX 为例 4. 汇编指令 1.move xx , num   将 num 送入寄存器 xx ; 2.add xx , num   将寄存器 xx 的数值加上 num ; 3.move xx , yy   将寄存器 yy 的数值送入寄存器 xx ; 4.add xx , yy   将寄存器 xx , yy 的值相加并存在 xx 中; 5.所有的内存单元构成的存储空间是一个一维的线性空间。每一个内存单元在这个空间中都有唯一的地址,这个唯一的地址称为物理地址。8086CPU给出物理地址的方法 , CPU中的相关部件提供两个16位的地址,一个称为段地址,另一个称为偏移地址;

第二章总结

余生长醉 提交于 2020-03-24 02:27:59
第二章总结 1 、 8086CPU 概述 8086 是 Intel 系列中 16 位微处理器,地址总线 20 位。 8086 有 14 个 16 位寄存器: AX, BX, CX, DX( 通用寄存器) SI, DI, BP, SP (基址和变址寄存器) CS, SS, DS, ES (段寄存器) IP,PSW (指令指针和标志寄存器) ( 汇编语言中不区分大小写 ) 2 、通用寄存器(用于存放一般性数据,每个寄存器均为 16 位) 通用寄存器 AX,BX,CX,DX 均可拆成两个 8 位寄存器(以 AX 为例,低 8 位寄存器为 AL ,高 8 位为 AH )单独使用。 3 、字在寄存器中的存放 字节:内存划分的基本单位( Byte ),一个字节由 8 个 bit 位组成。 字 : 两个字节组成,分别为字的高位字节和低位字节 任何数据到了计算机里都是由二进制数存放的。以 AX 为例可以存 16 位二进制数,每四位二进制数对应一个十六位进制数 十进制数据: 20000 → AX 对应的二进制: 100 1110 0010 0000 B 对应的十六进制: 4E20 H (其中 AL=4EH,AL=20H) 4 、汇编指令 Mov 指令中有两个操作数,作用是将后面的操作数赋给前面的操作数。 Add 指令中有两个操作数,作用是将前后的操作数相加,赋给前面的操作数。 ** 注:( 1 )在

《汇编语言》第二章总结

守給你的承諾、 提交于 2020-03-24 02:24:50
汇编语言(面向机器的程序设计语言) 第二章 信息的大本营——寄存器 CPU概述 一个典型的CPU由运算器、控制器、寄存器等器件组成。运算器进行信息处理,寄存器进行信息存储,控制器控制各种器件进行工作。 内部总线连接各种器件,在它们之间进行数据的传送,实现CPU内部各个器件之间的联系。外部总线实现CPU和主板上其它器件的联系。这个章节所介绍的寄存器是CPU中程序员可以用指令读写的部件,程序员通过改变各种寄存器中的内容来实现对CPU的控制。 不同的CPU,寄存器的个数和结构都是不同的。8086CPU有14个寄存器,每个寄存器都有对应的名称分别为:AX、BX、CX、DX、SI、DI、SP、BP、IP、CS、SS、DS、ES、PSW。 2.1 通用寄存器 8086CPU的所有寄存器都是16位的,可以存放两个字节。AX、BX、CX、DX这4个寄存器通常用来存放一般性的数据,被称为通用寄存器。以AX为例,16位寄存器的逻辑结构如下图: 16位寄存器的逻辑结构, 其存放的无符号数据范围:0 ~ 2^16 -1 为了与早期CPU操作兼容,这4个寄存器均可拆分成两个8位寄存器单独使用,分别为AX分为AH和AL,BX分为BH和BL,CX分为CH和CL,DX分为DH和DL,下面以AX为例: AH和AL存放的无符号数据范围:0 ~ 2^8 -1 一个字由两个字节组成,可以存在一个16位寄存器中

《汇编语言(第二章)》课后小结

ε祈祈猫儿з 提交于 2020-03-24 02:22:34
通过本章的学习:了解通用寄存器,掌握字数据在寄存器中的存储,理解段的概念,了解段寄存器,掌握汇编指令mov, add和jmp的基本用法。 一个典型的CPU由运算器、控制器、寄存器等器件组成。内部总线实现CPU内部各个器件之间的联系。外部总线实现CPU和主板上其它器件的联系。本课程内容介绍基于8086CPU, 8086是Intel系列中16位微处理器,地址总线20位。 CPU字长是指CPU在单位时间内能一次处理的二进制位数。该指标反映出CPU内部运算处理的速度。而位宽是指CPU通过外部数据总线与内存之间一次能够传送的数据位。 关于ISA,一个处理器支持的指令和指令的字节级编码称为它的ISA。不同处理器“家族”系列,有不同的ISA。同一系列里也有不同类型的处理器。虽然每个厂商制造的处理器性能和复杂性不断提高,但是不同的类型在ISA级别上都保持着兼容。 指令使用注意事项,(1) 在mov和add指令中,两个操作对象的位数应一致。(2)运算时超出寄存器表示的位数的情形,例如:设(AX) = 8226H, (BX) = 8226H,执行ADD AX, BX后, (AX) =044CH,本来8226H+8226H=1044CH,舍弃高位的1,最后取044CH。 8086结构表示物理地址的障碍,8086内部的寄存器都是16位的,而外部地址总线宽度为20位

线程、进程间通信

我的梦境 提交于 2020-03-22 18:17:06
线程 在无线程的系统中,进程是: 存储器、外设等资源的分配单位 处理机调度的对象 在引入线程后: 线程 是 处理机调度 的对象 进程 作为 资源分配 单位 同一进程内可包含 多个线程 ,他们 共享进程的资源 线程的使用 引入线程的原因: 并行实体 共享同一个地址空间和所有可用数据 的能力 比进程更容易创建、撤销 性能的提高。如果存在着大量的计算和大量的IO处理,多线程允许这些活动 彼此重叠进行 ,加快应用程序执行的速度 多处理机系统,多线程可以真正地并行 例子:文字处理软件 如果程序只有一个线程,那么只要已启动磁盘备份,键盘和鼠标输入的命令都会不予理睬,知道备份结束,用户将感觉到程序反应迟钝 使用三个线程: 一个线程和用户交互 第二个线程在后台重新进行格式处理 第三个线程处理磁盘备份 例子:万维网服务器 Web服务器:接受用户请求,将所请求的页面发回给客户机 多线程实现: 一个线程(分配程序)从网络中读入工作请求,检查请求后,提交给一个工作线程(唤醒睡眠的工作线程) while (true) { get_next_request(&buf); handoff_work(&buf); } 工作线程负责调入页面(读高度缓存或磁盘) while (true) { wait_for_work(&buf); look_for_page_in_cache(&buf, &page); if

Linux学习(含有常用命令集)

佐手、 提交于 2020-03-22 16:03:14
Linux概述 Linux是一个开源、免费的操作系统。 Linux是一个内核,在linux内核上加工包装,二次开发成Ubuntu、CentOS等发行版。 Linux常用命令集 vi,vim,文本编辑器 vi和vim的三种常见模式:正常模式,可以使用快捷键处理文件;编辑模式,按i进入编辑模式;命令行模式,按ESC进入,完成:wq离开等命令。 查找关键字,命令行下按/关键字,回车查找关键字,n查找下一个; 设置行号,命令行下:set nu和:set nonu 到文档最末行和顶行,分别在正常模式输入G和gg 移动到指定行数,先显示行号,然后输入20,最后按快捷键shift+G 开机重启和用户注销 shutdown -h now,立即关机 shutdown -r now,reboot,重启计算机 sync,把内存数据同步到磁盘 用户管理 用户属于用户组,一个用户至少属于一个用户组,用户配置信息在/etc/passwd,组信息在/etc/group useradd 用户名,添加用户 passwd 用户名,指定密码 userdel 用户名,删除用户保留home目录 id 用户名,查询用户信息 su - 切换用户名,切换用户 groupadd 组名,增加用户组 groupdel 组名,删除用户组 useradd -g 用户组 用户名,增加用户到相应用户组 usermod -g 用户组 用户名

(转)Nginx静态服务配置---详解root和alias指令

老子叫甜甜 提交于 2020-03-21 14:55:50
Nginx静态服务配置---详解root和alias指令 原文:https://www.jianshu.com/p/4be0d5882ec5 静态文件 Nginx以其高性能著称,常用与做前端反向代理服务器。同时nginx也是一个高性能的静态文件服务器。通常都会把应用的静态文件使用nginx处理。 配置nginx的静态文件有两个指令,一个 root 和一个 alias。对于这两个指令,是否需要在路径的后面加上斜杠,经常容易让人犯晕,本文通过尝试不同的匹配规则,归纳了一个比较通用的配置方式。 基本配置 与 简明 Nginx Location Url 配置笔记 一文关于location url配置的实验一样,本文也使用vagrant虚拟机里的nginx。其基本配置如下: /etc/nginx/sites-enabled/pro.conf server { listen 80 default_server; server_name localhost; access_log /var/log/nginx/pro/access.log; error_log /var/log/nginx/pro/error.log; error_page 404 /404.html; root /vagrant/pro; index index.html index.htm; } 项目的目录如下: ☁ pro