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

【408之计算机组成原理】计算机系统概述

目录

    • 前言
    • 一、计算机的发展历程
      • 1. 计算机发展的四代变化
      • 2. 计算机元件的更新换代
      • 3. 计算机软件的发展
    • 二、计算机系统层次结构
      • 1. 计算机系统的组成
      • 2. 冯诺依曼体系结构
      • 3. 计算机的功能部件
        • 1. 输入设备
        • 2. 输出设备
        • 3. 存储器
        • 4. 运算器
        • 5. 控制器
    • 三、 分析计算机各个部件在执行代码中的过程(重难点)
    • 四、计算机系统的层次结构
    • 五、计算机的性能指标

前言

本文主要包含以下内容:计算机发展历程计算机的系统层次结构(计算机系统的基本组成和计算机硬件的基本组成计算机硬件和软件的关系计算机系统的工作原理),和计算机的性能指标

一、计算机的发展历程

1. 计算机发展的四代变化

计算机的发展过程经理四个时代:电子管时代晶体管时代中小规模集成电路时代超大规模集成电路时代

  • 电子管时代逻辑元件采用电子管,使用机器语言进行编程,存储的容量小,体积大,成本高,运算速度慢。
  • 晶体管时代逻辑元件采用晶体管,运算速度相比于电子管时代的计算机提高一点,此时开始出现高级语言和编译程序,有了操作系统的雏形
  • 中小规模集成电路时代逻辑元件采用中小规模集成电路,高级语言发展迅速,开始有了分时操作系统
  • 超大规模集成电路时代逻辑元件采用大规模集成电路和超大规模集成电路,产生了微处理器(CPU),产生了并行、流水线、高速缓存和虚拟存储器等概念。

2. 计算机元件的更新换代

  1. 摩尔定律:当价格不变时,集成电路上可容纳的晶体管数目,约每隔18个月就会增加一倍,性能也会提升一倍。
  2. 半导体存储器的发展
  3. 微处理器的发展:微处理器从刚开始只能处理8位发展到现在能够处理64位,这里的位指的是机器字长,也就是计算机进行一次整数运算所能处理的二进制数据的位数,例如:像处理一个整数,我们知道一个整数是4个字节,也就是8个比特位,那么如果采用刚开始的处理器,因为那时候的处理器一次只能处理8个比特位,所以那个时候的处理器处理一个整数需要4次,现在的处理器一次能够处理64个比特位,所以现在的处理器来处理一个整数一次就能够处理完毕。

3. 计算机软件的发展

计算机语言从刚开始的机器语言,逐渐发展产生了汇编语言面向对象的高级语言,可见其发展是非常迅速的。

二、计算机系统层次结构

1. 计算机系统的组成

计算机系统是由硬件系统软件系统组成的。

  • 硬件系统:能够实际摸得着的那些东西:比如常见输入输出设备存储器运算器控制器,这五大部件也是后面冯诺依曼体系结构中的重要组成部分。
  • 软件系统:包括常见的使用高级语言编写而形成的软件,其能够让硬件完成对应的工作

计算机性能的好坏很大程度是取决于软件的,但是软件的运行又离不开硬件,硬件和软件其实对于实现某一个逻辑具有等效的作用,但是使用硬件和使用软件来完成的成本和效率是不一样的,其中,如果使用软件来完成逻辑运行的话,就是效率低,成本低使用硬件来完成对应的逻辑运算的话就是效率高,成本高。比如:如果我们要完成一个乘法计算,那么对于硬件我们只需要实现一个乘法指令(成本高),让硬件进行计算即可(效率高),但是采用软件的话,就只能进行多次相加,所以显然效率就会比较低,但是成本也低

2. 冯诺依曼体系结构

早期的冯诺依曼体系结构
在这里插入图片描述
早期的计算机中的结构是按照上面的结构实现的,数据经过输入设备之后是将数据传送到运算器,然后再由运算器将数据输送到存储器,这个结构是以运算器为中心的,这个过程中效率就会相对比较慢了,所以后期的计算机中的结构做出了修改
后期的冯诺依曼体系结构
在这里插入图片描述
后期的计算机中,数据经输入设备之后是直接到达存储器,然后需要运算的时候再将数据传送给运算器进行运算。所以这个结构是以存储器为中心的

  1. 存储程序:将事先编制好的程序原始数据送入主存(内存)后才能执行CPU执行),一旦程序被启动,就无需操作人员干预,计算机会自动逐条执行指令,直到程序运行结束。存储程序相比于原始的计算机所具有的优点:不需要人为进行干预,从而提高了计算机运行的效率
  2. 冯诺依曼体系计算机的特点
  • 采用存储程序的工作方式
  • 计算机硬件系统由运算器、存储器、控制器、输入设备和输出设备构成
  • 指令和数据以同等地位存储在存储器中,形式上没有区别,但是计算机能够对它们进行区分
  • 指令和数据均以二进制的形式进行表示。指令是由操作码地址码组成,其中,操作码指出操作的类型,就是告诉CPU这条指令需要执行什么操作,比如:加法操作和减法操作。地址码是指出操作数的地址,就是告诉CPU这个要去哪里找这个指令运算对应的操作数。

3. 计算机的功能部件

前面我们知道冯诺依曼体系结构中包含五大部件:输入设备,输出设备,存储器,运算器和控制器。下面我们将逐一介绍其中的原理:

1. 输入设备

输入设备的主要作用就是将程序和数据以计算机能够识别的机器语言形式输入给计算机,最常用的输入设备:键盘,鼠标,扫描仪,摄像机

2. 输出设备

输出设备的主要功能就是将计算机处理的结构以人类能够识别的形式输出。最常用的输出设备:显示器、打印机。

3. 存储器

存储器包括两类基本的存储器:主存储器和辅助存储器

  • 主存储器:指内存,就是CPU能够直接访问的存储器,一般大小为:8GB或者16GB
  • 辅助存储器:CPU不能直接访问的存储器,主要的任务是帮助主存储器存储更多信息,因为CPU无法直接访问这里的信息,所以当这些信息需要被执行的时候,需要先将这些信息调入内存才能被执行。常见的辅助存储器:比如电脑中的磁盘,手机的SD卡,U盘之类的存储器。
  • 按地址存取方式:主存储器的工作方式是按照存储单元的地址进行存取的,这里的存储单位,主存储器一般会被划分为很多个小的存储单元,每一个单元从头到尾依次会进行编号,每一个存储单元对应的编号就是这个存储单元对应的地址。
    在这里插入图片描述
    主存储器中主要包含:存储体、地址寄存器(MAR)和数据寄存器(MDR)
  • 存储体:存储体会被分成很多个存储单元,数据在存储体中是按照地址进行存取的,存储单元中包含很多个存储元件,每一个存储元件存储一个二进制的1或者0,所以一个存储单元存储的是一串二进制数的序列,我们将这串二进制序列称为存储字,这串二进制序列的二进制位数称为存储字长。
  • 地址寄存器(MAR):存放的是数据在存储体中的地址,形式为二进制。其中地址寄存器有几位,对应的存储体中就有2的几次方个存储单元。如:一个主存储器中的地址寄存器有8位,那么这个主存储器中的存储体就被分成2^8个存储单元。
  • 数据寄存器(MDR):存放的是写入存储体中的数据或者即将从存储体中读出的数据,位长为存储字的长度(一次只能存储一个数据)。

需要注意的是:地址寄存器(MAR)和数据寄存器(MDR)虽然是存储器的一部分,但是在现代计算机中却是存在于CPU中的。

4. 运算器

运算器是计算机中的执行部件,用于进行算数运算逻辑运算

  • 算数运算:按照算数运算规则进行的运算,如:加、减、乘、除
  • 逻辑运算:按照逻辑进行的运算,如:与、或、非、异或、比较、移位
    运算器中包含很多个寄存器,主要用于暂时存储操作数和中间结果,如:累加器(ACC)乘商寄存器(MQ),**操作数寄存器(X)**等,其中,这三个是运算器中必须具备的寄存器。
  1. 累加器(ACC):存放操作数或运算结果
  2. 乘商寄存器(MQ):在乘除时,存放操作数或运算结果
  3. 操作数寄存器(X):存放操作数
  4. 算术逻辑单元(ALU):通过内部实现的复杂的电路来实现算数运算和逻辑运算

5. 控制器

控制器是计算机的指挥中心,计算机中主要是由控制器指挥各个部件自动协调地工作。控制器主要由控制单元(CU)指令寄存器(IR),**程序计数器(PC)**组成

  1. 控制单元(CU):分析指令,给出控制信号
  2. 指令寄存器(IR):存放当前执行的指令
  3. 程序计数器(PC):存放下一条执行指令的地址,有自动加1的功能,1是指一条指令的长度,即可以自动形成下一条指令的地址,它和主存中的MAR有一条直接的通路。

三、 分析计算机各个部件在执行代码中的过程(重难点)

任何一条执行的执行都要经历三个步骤:取指令,分析指令,执行指令
下面以一个具体的例子来介绍这个过程:
在这里插入图片描述
比如:我们要让计算机执行上面的代码,上面的代码逻辑非常简单,就是先执行ab,再执行ab+c,然后讲结果放在y中。其中对应的数据有:a,b,c,y
首先需要将对应的指令和数据存入主存储器的存储体中,存储的过程是按照存储单元的地址进行存储的,存储的形式是二进制,如下:
在这里插入图片描述

  1. 执行第一条指令
  • 取指令:刚开始PC寄存器中存储的是第一条指令的地址,此时会将PC中存储的指令地址传给地址寄存器(MAR),然后PC指向下一条指令,此时MAR中对应的值为0,然后再到存储体中取出地址为0的存储单元中的数据(指令),放入数据寄存器(MDR),然后再将数据寄存器中的指令传给指令寄存器(IR),此时IR会将指令分为两个部分:操作码和地址码,操作码会交给控制单元(CU)进行分析,地址码会交给地址寄存器(MAR)。
  • 分析指令:控制单元经分析得出该指令想要执行的操作是取数操作。
  • 执行指令:通过MAR中存储的地址到存储体相应的位置取出对应的数据放在数据寄存器(MDR)中,所以此时MDR中存放的值为a = 2,再将2的值放入累加寄存器(ACC)
    具体过程如下:
    在这里插入图片描述
  1. 执行第二条指令
  • 取指令:第一条指令执行结束之后,PC指向的指令是第二条指令,此时将PC中存放的指令地址传给MAR,PC再指向下一条指令,此时MAR存放的是第二条指令的地址,因此到存储体中该地址处找到存储的数据(第二条指令),并将该指令放到MDR中,此时数据寄存器MDR将该指令交给指令寄存器IR
  • 分析指令:IR将该指令分成两个部分:操作码和地址码,操作码交给控制单元(CU),地址码交给地址寄存器(MAR),CU经分析得知该指令想要执行乘法操作
  • 执行指令:到存储体中MAR中存储的地址对应的存储单元处找到对应的数据,并将该数据放入数据寄存器(MDR),再将该数据输出到乘商寄存器(MQ)中,此时累加寄存器(ACC)中存放的是a的值,MQ中存放的是b的值,再将累加寄存器中的值放入通用寄存器(X)中,此时控制单元向算数逻辑单元(ALU)发送信号,执行乘法操作:将X中存储的值和MQ存储的值进行相乘,再将数据存到累加寄存器(ACC)中。
    具体过程如下:
    在这里插入图片描述
  1. 执行第三条指令
  • 取指令:第二条指令执行结束之后,PC指向的指令是第三条指令,此时将PC中存放的指令地址传给MAR,PC再指向下一条指令,此时MAR存放的是第三条指令的地址,因此到存储体中该地址处找到存储的数据(第三条指令),并将该指令放到MDR中,此时数据寄存器MDR将该指令交给指令寄存器IR
  • 分析指令:IR将该指令分成两个部分:操作码和地址码,操作码交给控制单元(CU),地址码交给地址寄存器(MAR),CU经分析得知该指令想要执行加法操作
  • 执行指令:到存储体中MAR中存储的地址对应的存储单元处找到对应的数据,并将该数据放入数据寄存器(MDR),再将该数据输出到通用寄存器(X)中,此时累加寄存器(ACC)中存放的是a*b的值,通用寄存器中存储的是c的值,此时控制单元向算数逻辑单元(ALU)发送信号,执行加法操作:将ACC中存储的值和X中存储的值进行相加,再将数据存到累加寄存器(ACC)中。
    具体过程:
    在这里插入图片描述
  1. 执行第四条指令
  • 取指令:第三条指令执行结束之后,PC指向的指令是第四条指令,此时将PC中存放的指令地址传给MAR,PC再指向下一条指令,此时MAR存放的是第四条指令的地址,因此到存储体中该地址处找到存储的数据(第四条指令),并将该指令放到MDR中,此时数据寄存器MDR将该指令交给指令寄存器IR
  • 分析指令:IR将该指令分成两个部分:操作码和地址码,操作码交给控制单元(CU),地址码交给地址寄存器(MAR),CU经分析得知该指令想要执行存数操作
  • 执行指令:将累加寄存器(ACC)中存储的数据放入数据寄存器(MDR)中,通过数据寄存器MAR中存储的地址找到存储体中对应的存储单元,此时将MDR中存储的数据放入这个存储单元即可。
    具体过程:
    在这里插入图片描述
  1. 执行第五条指令
  • 取指令:第四条指令执行结束之后,PC指向的指令是第五条指令,此时将PC中存放的指令地址传给MAR,PC再指向下一条指令,此时MAR存放的是第五条指令的地址,因此到存储体中该地址处找到存储的数据(第五条指令),并将该指令放到MDR中,此时数据寄存器MDR将该指令交给指令寄存器IR
  • 分析指令:IR将该指令分成两个部分:操作码和地址码,操作码交给控制单元(CU),地址码交给地址寄存器(MAR),CU经分析得知该指令想要执行停机操作
  • 执行指令:利用操作系统中学习的中断处理机制结束该进程
    具体过程:
    在这里插入图片描述

四、计算机系统的层次结构

五、计算机的性能指标

相关文章:

【408之计算机组成原理】计算机系统概述

目录前言一、计算机的发展历程1. 计算机发展的四代变化2. 计算机元件的更新换代3. 计算机软件的发展二、计算机系统层次结构1. 计算机系统的组成2. 冯诺依曼体系结构3. 计算机的功能部件1. 输入设备2. 输出设备3. 存储器4. 运算器5. 控制器三、 分析计算机各个部件在执行代码中…...

1.Spring Cloud (Hoxton.SR10) 学习笔记—基础知识

本文目录如下:一、Spring Cloud基础知识什么是微服务架构?服务拆分 有哪些注意事项?什么是分布式集群?分布式的 CAP 原则?组件 - Spring Cloud 哪几个组件比较重要?组件 - 为什么要使用这些组件?组件 - Na…...

嵌入式开发工具箱【持续更新中】【VMware、Ubuntutftp、nfs、SecureCRT、XShell、Source Insight 4.0】

一、概述 本文主要介绍嵌入式开发过程中需要用到的工具及简单的使用方法。避免在搭建嵌入式开发环境时,需要四处寻找文档,收藏此文章,一文搞定。 大多数嵌入式开发环境是使用Linux作为目标开发系统,所以开发主机一般都是Linux系统…...

深究Java Hibernate框架下的Deserialization

写在前面 Hibernate是一个开源免费的、基于 ORM 技术的 Java 持久化框架。通俗地说,Hibernate 是一个用来连接和操作数据库的 Java 框架,它最大的优点是使用了 ORM 技术。 Hibernate 支持几乎所有主流的关系型数据库,只要在配置文件中设置好…...

微服务一 实用篇 - Docker安装

《微服务一 实用篇 - Docker安装》 提示: 本材料只做个人学习参考,不作为系统的学习流程,请注意识别!!! 《微服务一 实用篇 - Docker安装》《微服务一 实用篇 - Docker安装》0.安装Docker1.CentOS安装Docker1.1.卸载(可选)1.2.安装docker1.3.启动docker…...

JavaSE22-集合2-map

文章目录一、集合概念二、map集合1、Map集合的特点2、HashMap2.1 HashMap特点2.2 创建对象2.3 常用方法2.4 遍历2.4.1 使用entrySet遍历2.4.2 使用keySet遍历3、HashMap的key去重原理一、集合概念 集合就是用于存储多个数据的容器。相对于具有相同功能的数组来说,集…...

【项目精选】病历管理系统设计与实现(源码+视频)

点击下载源码 企业财务管理系统主要用于电子病历来提高医院各项工作的效率和质量,促进医学科研、教学;减轻各类事务性工作的劳动强度,使他们腾出更多的精力和时间来服务于病人。本系统结构如下: 电子病例系统: 病人登…...

如何用Python把篮球和鸡联系起来

文章目录画个球让球转起来画个球 不管篮球和不和鸡联系起来,都首先得有个球,或者说要有一个球面,用参数方程可以表示为 xrcos⁡ϕcos⁡θyrcos⁡ϕsin⁡θzrsin⁡ϕ\begin{aligned} x & r\cos\phi\cos\theta\\ y & r\cos\phi\sin\th…...

【RocketMQ】消息的刷盘机制

刷盘策略 CommitLog的asyncPutMessage方法中可以看到在写入消息之后&#xff0c;调用了submitFlushRequest方法执行刷盘策略&#xff1a; public class CommitLog {public CompletableFuture<PutMessageResult> asyncPutMessage(final MessageExtBrokerInner msg) {// …...

AMBA-AXI(一)burst 传输-INCR/WRAP/Fixed

&#x1f4a1;Note&#xff1a;本文是根据AXI协议IHI0022F_b_amba_axi_protocol_spec.pdf&#xff08;issue F&#xff09;整理的。主要是分享AXI3.0和4.0部分。如果内容有问题请大家在评论区中指出&#xff0c;有补充或者疑问也可以发在评论区&#xff0c;互相学习&#x1f64…...

Java知识复习(八)Spring基础

1、什么是Spring框架&#xff1f; Spring &#xff1a;是一款开源的轻量级 Java 开发框架&#xff0c;旨在提高开发人员的开发效率以及系统的可维护性 2、Spring、SpringMVC和SpringBoot的区别 Spring主要指Spring Framework&#xff0c;就是指如上图所示的各项功能模块Spr…...

WuThreat身份安全云-TVD每日漏洞情报-2023-02-27

漏洞名称:OTFCC 缓冲区错误漏洞 漏洞级别:中危 漏洞编号:CVE-2022-35060,CNVD-2023-11996,CNNVD-202209-1527 相关涉及:OTFCC OTFCC 漏洞状态:EXP 参考链接:https://tvd.wuthreat.com/#/listDetail?TVD_IDTVD-2022-23648 漏洞名称:MuYucms 存在任意代码执行漏洞 漏洞级别:高危…...

上海交大陈海波教授、夏虞斌教授领衔巨作上市:《操作系统:原理与实现》

❤️作者主页&#xff1a;小虚竹 ❤️作者简介&#xff1a;大家好,我是小虚竹。2022年度博客之星评选TOP 10&#x1f3c6;&#xff0c;Java领域优质创作者&#x1f3c6;&#xff0c;CSDN博客专家&#x1f3c6;&#xff0c;华为云享专家&#x1f3c6;&#xff0c;掘金年度人气作…...

dpi数据接入shell脚

原文&#xff1a;dpi数据接入shell脚本_weixin_34416754的博客-CSDN博客 ##############从ftp服务器拿数据文件 #!/bin/bash #获取感知优良率DPI数据 #DCN服务器信息 uSichuan pS988188# ip137.192.5.53 #获取日期&#xff0c;根据日期抓取文件 Tdate -d "3 days ago&…...

Easyrecovery数据恢复软件工作原理及使用介绍教程

Easyrecovery是一款强大的数据恢复软件&#xff0c;它专门解决磁盘数据恢复问题。在计算机世界里&#xff0c;数据丢失经常是一件令人头疼的事情&#xff0c;但是有了Easyrecovery&#xff0c;您可以放心大胆地享受数据备份和恢复的乐趣。EasyRecovery使用Ontrack公司复杂的模式…...

【面试题】社招中级前端笔试面试题总结

大厂面试题分享 面试题库后端面试题库 &#xff08;面试必备&#xff09; 推荐&#xff1a;★★★★★地址&#xff1a;前端面试题库typeof null 的结果是什么&#xff0c;为什么&#xff1f;typeof null 的结果是Object。在 JavaScript 第一个版本中&#xff0c;所有值都存储在…...

设备运行状况不能远程手机查看。难道就妥协吗?为何不试试这个办法

一、背景 随着国家经济结构逐步调整&#xff0c;纺织行业自动化、智能化水平逐步提高&#xff0c;业内竞争程度也将加大&#xff1b;整个市场变化快&#xff0c;并呈现出智能化、通用化、网络化、复杂化的新发展趋势。客户订单小批量、个性化、快速交货的特点越来越明显&#…...

重新认识 Java 中的内存映射(mmap)

mmap 基础概念 mmap 是一种内存映射文件的方法&#xff0c;即将一个文件映射到进程的地址空间&#xff0c;实现文件磁盘地址和一段进程虚拟地址的映射。实现这样的映射关系后&#xff0c;进程就可以采用指针的方式读写操作这一段内存&#xff0c;而系统会自动回写脏页到对应的文…...

224. 基本计算器

224. 基本计算器给你一个字符串表达式 s &#xff0c;请你实现一个基本计算器来计算并返回它的值。注意:不允许使用任何将字符串作为数学表达式计算的内置函数&#xff0c;比如 eval() 。 示例 1&#xff1a;输入&#xff1a;s "1 1"输出&#xff1a;2示例 2&#…...

微信小程序通过 node 连接 mysql——方法,简要原理,及一些常见问题

前言 博主自己在22年夏天根据课程要求做了一个小程序连接阿里云服务器的案例&#xff0c;在最近又碰到了相应的需求。 原参考文章&#xff1a;微信小程序 Node连接本地MYSQL_微信小程序nodejs连接数据库_JJJenny0607的博客-CSDN博客 ,还请多多支持原作者&#xff01; 第二次…...

uni-app项目搭建和代码托管

文章目录一、项目搭建步骤一、HBuilder X 创建uniapp项目步骤二、开启微信小程序服务端口步骤三、把项目运行到微信小程序步骤四、解决警告二、使用Git管理项目2-1、本地管理2-2、托管到码云一、项目搭建 步骤一、HBuilder X 创建uniapp项目 步骤二、开启微信小程序服务端口 步…...

win10+python3.6+cuda9+pytorch1.1.0安装

为了让torch可以使用显卡GPU加速&#xff0c;需要安装对应版本的cudatoolkit和pytorch。这里我的nvidia显卡驱动是9.1版本&#xff0c;只能安装cudatoolkit9。 一般支持gpu加速的显卡大部分都是英伟达nvidia系列&#xff0c;都自带了nvidia驱动&#xff0c;所以不需要安装nvidi…...

【2023】某python语言程序设计跟学第二周内容

本文说明&#xff1a; 案例内容为北理工python语言程序设计课程&#xff0c;如有不妥请联系&#xff01; 目录蟒蛇绘制案例&#xff1a;执行结果&#xff1a;代码分析&#xff1a;举一反三&#xff1a;绘制一个五角星图案执行结果&#xff1a;turtle库根据案例简单说明&#xf…...

spring源码篇——BeanDefinition的注册

spring-framework 版本&#xff1a;v5.3.19 文章目录注解方式&#xff08;AnnotationConfigApplicationContext&#xff09;AnnotationConfigApplicationContext#registerAnnotatedBeanDefinitionReader#doRegisterBeanBeanDefinitionRegistry#registerBeanDefinitionAnnotatio…...

virtualbox7虚拟机中安装苹果macOS big sur系统详细教程

第1步&#xff0c;在 Windows 10/11 PC 上启用虚拟化。 现在的电脑一般都默认开启虚拟化技术了。 如果你遇到一些报错&#xff0c;比如收到错误消息“无法在虚拟机上打开会话”&#xff0c;可以查看 如果没有遇到问题&#xff0c;可以直接进入到第二步。 第2步&#xff0c;在…...

用spectralayers 简单去一下人声做个伴奏

最近有个同事说有个工作要一个歌的伴奏不会下载问我能不能给下一个。问题是我五音不全&#xff0c;也不咋关注伴奏这方面的事儿&#xff0c;然后巧了&#xff0c;当天晚上就有个网上的大哥在群里聊天的时候说有个去人声比较给力的软件&#xff0c;我马上给要来了。 软件叫啥sp…...

高峰对话|深度探讨「多云与边缘」

2022 年 12 月&#xff0c;分析师 Zeus Kerravala 与 VMware 通信运营商和边缘事业部高级副总裁兼总经理 Sanjay Uppal 进行非常有启发性的谈话&#xff0c;分享了科技行业领导者的见解。 二位主要围绕以下主题进行探讨&#xff1a; &#x1f4cd; 如何定义多云&#xff0c;以…...

开发手册——一、编程规约_2.常量定义

这篇文章主要梳理了在java的实际开发过程中的编程规范问题。本篇文章主要借鉴于《阿里巴巴java开发手册终极版》 下面我们一起来看一下吧。 1. 【强制】不允许任何魔法值&#xff08;即未经定义的常量&#xff09;直接出现在代码中。 反例&#xff1a;String key "Id#…...

Sandstorm 建设者亮点——2023 年 2 月

隆重推出 Sandstorm 建设者亮点——2023 年 2 月版&#xff0c;这是由最厉害的 Sandstorm 社区制作的独一无二的 NFT 系列。 从突破性的兔子机器人到神奇的蒸汽朋克海盗船&#xff0c;Sandstorm 建设者亮点 NFT 系列展示了一系列独一无二的创作。 19 项新资产将添加至 Sandstor…...

MyBatis快速入门

创建表&#xff08;自行完成&#xff09;创建模块&#xff0c;引入坐标&#xff08;1&#xff09;.进入mybatis官网&#xff1a;MyBatis中文网按步骤进行添加坐标先添加mybatis依赖然后手动添加mysql驱动junit单元测试坐标&#xff1a;logback坐标&#xff1a;用的时候直接复制…...

浏览器老是跳到购物app/seo品牌优化整站优化

跟着老王学python http://www.cnpythoner.com/pythonshop.html转载于:https://blog.51cto.com/348134/579628...

关于asp_sql网站开发的书籍/网站权重划分

问题描述在 js 中,无论是函数, 还是方法, 还是事件, 还是构造器...这些东西的本质都是函数&#xff0c;其中的区别只是所处的位置不同。根据函数内部this的指向不同&#xff0c;可以将函数的调用模式分成4种&#xff1a;函数模式、方法模式、构造器模式和上下文模式等四种不同的…...

做配资网站多少钱/镇海seo关键词优化费用

/**********************************************************************查询Drop操作删除的对象select * from recyclebin ;单个对象(表、索引或是通过drop操作删除的其它对象)恢复flashback table(被删除的对象类型) 被删除的对象名称 to before drop********************…...

宽带一般多少钱一个月/有必要买优化大师会员吗

随着智能手机普及&#xff0c;安卓智能手机的市场用户争夺战进入白热化阶段。作为国内用户群体规模最大的应用商店之一&#xff0c;安智重新整合旗下资源&#xff0c;将备受安卓手机用户喜爱的安智论坛正式更名为智友&#xff0c;并推出相应的独立站点和App&#xff0c;让安智用…...

企业运营流程/快速排名优化系统

你叕要贴邮票了。现有1元、2元、5元的邮票各无数张。这次的规则是邮资固定&#xff0c;所贴邮票张数固定。你的任务是计算出共有多少种贴法。 输入格式: 第一行为两个用空格分隔的整数m,n(0<m,n<1000)&#xff0c;依次代表邮资&#xff08;单位为元&#xff09;和规定所…...

帝国cms怎么做淘客网站/最佳搜索引擎

【IT168 技术文档】 OracleDBConsole[SID]服务简介 OracleDBConsole[SID]服务负责Windows平台下启动Oracle企业管理器&#xff0c;从Oracle 10g开始引入这个服务&#xff0c;也是从Oracle 10g开始&#xff0c;Oracle的企业管理器从客户端形式变为浏览器操作模式&#xff0c;这里…...