程序的运行机制——CPU、内存、指令的那些事

一、前言 说起计算机大家并不陌生,在计算机上又运行着各种程序,如QQ、微信等。这些程序有可以为我们做很多事情,能聊天、能玩游戏等等。那么这些看似复杂的程序在计算机中到底是怎么运行起来的呢?其实非常简单,我们不妨一起探讨一下。 作为程序员我们必须理解CPU是如何运行的,特别是要弄清楚负责保存指令和数据的寄存器的机制。了解了寄存器,也就自然而然的理解了程序的运行机制。 二、CPU 在程序运行流程中,CPU所负责的就是解析和运算最终转换成机器语言的程序内容。CPU从功能上来看由寄存器、控制器、运算器、时钟构成。 寄存器:用来暂存指令、数据等处理对象。 控制器:负责把内存上的指令、数据等读入寄存器、并根据指令的执行结果来控制计算机。 运算器:负责运算从内存读入寄存器的数据。 时钟:负责发出CPU开始计时的时钟信号 三、内存 内存指的就是计算机的主存储器,其主要负责存储指令和数据。CPU通过内存地址值来读取或写入指令和数据。注意:内存中的指令和数据会随着计算机的关机日自动清除。 在理解CPU和内存后,大家对程序的运行机制的理解是不是也加深了一些?程序启动后,根据时钟信号,控制器会从内存中读取指令和数据。通过对这些指令加以解析和运行,运算器就会对数据进行运算,控制器根据运算结果控制计算机。 四、决定程序流程的程序计数器 下面我们通过将123和456两个数相加,并将结果输出到显示器的实例,说一下程序计数器是如何工作的。 当用户发出启动程序的指示后,操作系统会把硬盘中保存的程序复制到内存中。如下图是程序启动时内存内容的模型。 操作系统把程序复制到内存后,会将程序计数器设定为0100(假设内存地址0100是程序运行的开始地址),然后程序便开始运行。CPU每执行一个指令,程序计数器的值就会自动加1。所以,程序计数器决定着程序的流程。 五、指令 从功能方面来看,机器语言指令可分为数据传送指令、算数指令、跳转指令、call/return指令。 数据传送指令:寄存器和内存、内存和内存、寄存器和外围设备之间的数据读写操作 运算指令:用累加寄存器执行算术运算、逻辑运算、比较运算和位移运算 跳转指令:实现条件分支、循环、强制跳转等…

Continue Reading →

word文档中插入另一个word文件

在工作中有时需要在一个word文件中插入另一个word文件的内容,或许有人说可以将另一个word的内容复制粘贴到主word文件中,这个方法在于另一个word文件内容不时可行,不过当另一个word文件内容很多时直接复制粘贴就很不方便了; 另一种方法就是直接将另一个word文件插入到主word文件中,当作主word文件的复件,另一个word文件在主word文件中可方便打开,又利于文档内容的管理,那该怎么插入呢,请看下文; 打开主word文档,依次点击菜单项插入–对象,如图箭头所示; 在对象对话框中,点击由文件创建页签; 点击浏览按钮,在文件选择框中选择要插入的主word文档的另一个word文档,如图所示; 选择要插入的另一个word文件后,选择显示为图标,如图,当然也可以选择链接到文件,两种方式插入的结果不同,若选择了链接到文件,在主word文档中只是插入另一个word文档的目录链接,如果这个主word文档移动到其他电脑上,另一个word文档就不能打开了; 插入另一个word文档后的效果如下图所示; 如果是将另一个word文件拖入主word中,在主word文档中显示另一个word文件中的内容,内容有点乱,不建议这么做; 引用链接:https://jingyan.baidu.com/article/e3c78d646a71933c4c85f528.html

Continue Reading →

文件夹或文件已在另一程序中占用

在使用windows的时候有时会遇见操作无法完成,因为其中的文件夹或文件已在另一程序中打开的情况,如何处理这种问题呢,下面进行介绍。 方法/步骤 在任务栏(桌面最下方),右击鼠标出现如下对话框 启动任务管理器,点击“性能” 找到“资源监视器” 在“关联的句柄”中进行搜索删除的文件夹名字 搜索出以下的程序正在使用此文件 点击程序,出现结束进程 在弹出的对话框中点击结束进程,然后再删除文件即可。 引用链接:https://jingyan.baidu.com/article/63acb44a21ed7361fdc17e4e.html

Continue Reading →

Win10修改密码或命令直接重置密码

1.如果我们只是想修改win10密码,这时候直接可以去控制面板中进行修改,win10进入控制面板只需要在桌面右键选择个性化里面搜索进入即可,当然还有其他方式。 2.进入以后点击进入用户账户,更改用户类型。 3.然后选择账户,里面就有修改密码的选项,输入原密码、新密码确认即可。 重置密码 1.按下组合键win加x,进入到Windows powershell(管理员)选项中进行设置。 2.首先输入net user命令并回车,然后会出现自己的账户。 3.然后再输入如图所示的字母串 用户名 + 空格 + *(注意后面有星号)然后回车。 4.回车后输入两次新密码即可完成。 5.当然我们也可以按下win加R进入运行输入如下图所示的按钮,在中间窗格中选择账户右键修改密码即可,希望能够对大家有帮助。 引用链接:https://jingyan.baidu.com/article/7f41ecec261e1d593d095c02.html

Continue Reading →

Linux常用命令(不断更新)

一、Linux下查看文件内容的命令 快速导读: cat 由第一行开始显示内容,并将所有内容输出 tac 从最后一行倒序显示内容,并将所有内容输出 more 根据窗口大小,一页一页的显示文件内容 less 和more类似,但其优点可以往前翻页,而且进行可以搜索字符 head 只显示头几行 tail 只显示最后几行 nl 类似于cat -n,显示时输出行号 tailf 类似于tail -f…

Continue Reading →

系统迁移——硬盘克隆(Windows与Mac)

Windows系统使用轻松备份用,Mac系统使用Carbon Copy Clone。用途硬盘克隆也就是磁盘克隆,是用来将一个磁盘中的所有数据复制到另一个磁盘,它的具备用途体现在以下几个方面:     硬盘升级:把旧硬盘或小硬盘升级到新的大硬盘,使用磁盘克隆来升级硬盘可以避免重装系统和重新安装应用程序。     迁移数据:快速地将一个磁盘中的所有数据迁移到其它磁盘。 制作备份盘:当前系统的磁盘中的所有数据都有重要,将这个磁盘克隆到目标磁盘,以对源磁盘做一个完整的备份。 数据恢复:在数据恢复时为了避免对磁盘造成数据的二次破坏,故对磁盘做一个克隆,然后从克隆的磁盘中恢复想要的数据。 一、轻松备份 1.操作步骤 在克隆时,你可以将一个小磁盘克隆到大磁盘,同时也可以将一个大磁盘复制到小磁盘。前提条件是,目标磁盘的空间能容纳源磁盘中的所有有效数据(即磁盘使用空间)。如果目标磁盘的空间不够,你也不用担心,傲梅轻松备份软件会检测目标磁盘,如果空间不足,会提前提示你。     第一步:在“克隆”栏下选择“磁盘克隆”。 第二步:选择源磁盘0,然后点击“下一步”。 第三步:选择目标磁盘1,然后点击“下一步”。 第四步:确保源磁盘和标磁盘的选定后,点击“开始克隆”。(你可以点击“编辑目标磁盘上的分区”这个按钮来调整分区大小。 “按扇区到扇区克隆”这个选项也是可用的,如果勾选此项,那么目标磁盘必须大于源磁盘。默认情况下,此软件只复制磁盘中的已存在的数据(即已使用的扇区),对于那些删除的数据不做克隆操作。但本程序也提供了一个选项“按扇区到扇区克隆”,如果你勾选了这个选项,本程序将会对所有数据进行克隆,不管这些数据删除与否)。 第五步:当所有操作完成时,点击“完成”。 其实,磁盘克隆也叫着“磁盘到磁盘克隆”,与磁盘克隆相近的一个功能是磁盘备份,它的作用是将一个磁盘中的所有数据存入到一个镜像文件中,也即通常所说的“备份磁盘到镜像”。轻松备份不仅能实现磁盘到磁盘克隆,同时也支持备份磁盘到镜像,将你的磁盘备份到镜像中,以便日后你可以还原你的磁盘。 2.下载链接    …

Continue Reading →

远程重启/关闭远程Windows服务器

一、前言     有时可能因为我们的误操作导致远程服务器宕机,通过命令mstsc远程连接到服务器中,还是无法进行操作时。这时我们就需要通过本机获取远程权限,强制重启/关闭服务器。 二、操作步骤 1、通过本机获取远程连接权限 cmd -> net use \\远程机器IP\ipc$ “密码”/user:”账号” 例:net use \\127.0.0.1\ipc$ “123456”/user:”administrator” 2、执行重启命令 cmd -> shutdown…

Continue Reading →

Windows Server远程连接控制

一、禁用远程连接 1、电脑 – > 系统属性 -> 高级系统设置 -> 远程 -> 不允许连接到这台计算机 二、多用户远程连接 1、在运行里面(Windows+R)输入“gpedit.msc”命令 2、“计算机组策略”依次打开 计算机配置–>管理模板—>windows组件—>远程桌面服务—>远程桌面会话主机—>连接 3、在连接里面找到“限制连接的数量”双击,显示如图,选中“已启用”我设置的是最大允许5人同时远程,点击确定。 4、双击打开“将远程桌面服务用户限制到单独的远程桌面服务会话”,选中“已禁用”,单击确定。设置到此结束。 引用地址:https://jingyan.baidu.com/article/4dc40848b44ac8c8d846f15b.html?st=2&os=0&bd_page_type=1&net_type=1

Continue Reading →

Windows下cmd查看Ip、Mac以及网络延迟问题

一、获取Ip 1、cmd中输入ipconfig,找到对应网卡的Ipv4地址 二、获取Mac地址 1、cmd中输入ipconfig/all,找到以太网适配器本地连接的物理地址 三、测试网络延迟 1、ping目标IP/域名 2、结果参照 1~30ms:极快,几乎察觉不出有延迟,玩任何游戏速度都特别顺畅 31~50ms:良好,可以正常游戏,没有明显的延迟情况 51~100ms:普通,对抗类游戏能感觉出明显延迟,稍有停顿 >100ms:差,无法正常游戏,有卡顿,丢包并掉线现象 参考网址:https://jingyan.baidu.com/article/6f2f55a14214ecb5b83e6c68.html

Continue Reading →