jr

手写一个简易的多周期 MIPS CPU

百般思念 提交于 2020-08-17 08:30:22
一点前言 多周期 CPU 相比单周期 CPU 以及流水线的实现来说其实写起来要麻烦那么一些,但是相对于流水线以及单周期 CPU 而言,多周期 CPU 除了能提升主频之外似乎并没有什么卵用。不过我的课题是多周期 CPU 那么就开始吧。 多周期 CPU 不同于单周期 CPU,多周期 CPU 指的是将整个 CPU 的执行过程分成几个阶段,每个阶段用一个时钟去完 成,然后开始下一条指令的执行,而每种指令执行时所用的时钟数不尽相同,这就是所谓的多周期CPU。 CPU在处理指令时,一般需要经过以下几个阶段: (1) 取指令(IF):根据程序计数器 PC 中的指令地址,从存储器中取出一条指令,同时,PC 根据指令字长度自动递增产生下一条指令所需要的指令地址,但遇到“地址转移”指令 时,则控制器把“转移地址”送入 PC,当然得到的“地址”需要做些变换才送入 PC。 (2) 指令译码(ID):对取指令操作中得到的指令进行分析并译码,确定这条指令需要完成的操作,从而产生相应的操作控制信号,用于驱动执行状态中的各种操作。 (3) 指令执行(EXE):根据指令译码得到的操作控制信号,具体地执行指令动作,然后转移到结果写回状态。 (4) 存储器访问(MEM):所有需要访问存储器的操作都将在这个步骤中执行,该步骤给出存储器的数据地址,把数据写入到存储器中数据地址所指定的存储单元或者从存储器中得

如何在pyqt中通过调用SetWindowCompositionAttribute实现Win10亚克力效果

女生的网名这么多〃 提交于 2020-08-17 03:53:29
亚克力效果   在我的第一篇博客 《如何在pyqt中实现窗口磨砂效果》 和第二篇博客 《如何在pyqt中实现win10亚克力效果》 中,我都是通过调用编译好的dll来实现窗口效果,这种方法要求电脑上必须装有MSVC。Visual Studio装起来确实费时又占C盘空间,所以今天换了一种实现方法——用纯python的方法实现 SetWindowCompositionAttribute 这个api的调用。我定义了一个WindowEffect类,里面通过调用 SetWindowCompositionAttribute 实现了Aero和亚克力效果,为了方便演示,我在WindowEffect里面还定义了一个用来移动无边框窗口的函数,关于更多无边框窗体的解决方案可以参见我的上一篇博客 《如何在pyqt中在实现无边框窗体的同时保留Windows窗口动画效果》 ,这里面介绍的很详细,不过还是用了一些C++的东西。下面是这次的亚克力效果(老婆太美了(๑¯∀¯๑)): 具体代码   1. 与第二篇博客不同,我在 WindowEffect 的 setAcrylicEffect 函数中新增了两个形参—— isEnableShadow 和 animationId ,看名字就知道一个控制亚克力窗口的阴影,另一个控制磨砂动画。在demo中是看不出 animationId 的具体效果的

如何延迟.keyup()处理函数,直到用户停止键入?

☆樱花仙子☆ 提交于 2020-08-15 17:56:45
问题: I've got a search field. 我有一个搜索字段。 Right now it searches for every keyup. 现在,它会搜索每个键。 So if someone types “Windows”, it will make a search with AJAX for every keyup: “W”, “Wi”, “Win”, “Wind”, “Windo”, “Window”, “Windows”. 因此,如果有人键入“ Windows”,它将使用AJAX搜索每个键入的内容:“ W”,“ Wi”,“ Win”,“ Wind”,“ Windo”,“ Window”,“ Windows”。 I want to have a delay, so it only searches when the user stops typing for 200 ms. 我希望有一个延迟,因此它仅在用户停止键入200毫秒时才搜索。 There is no option for this in the keyup function, and I have tried setTimeout , but it didn't work. 在 keyup 函数中没有用于此的选项,我已经尝试过 setTimeout ,但是它没有用。 How can I do that

总结 90 条写 Python 程序的建议 用“强迫症”维持代码质量

筅森魡賤 提交于 2020-08-15 17:39:39
阅读本文大概需要 3 分钟。 ” 本文于网络整理,版权归原作者所有,如来源信息有误或侵犯权益,请联系我删除。 自己写 Python 也有四五年了,一直是用自己的“强迫症”在维持自己代码的质量。都有去看 Google 的 Python 代码规范,对这几年的工作经验,做个简单的笔记,如果你也在学 Python,准备要学习 Python,希望这篇文章对你有用。 1. 首先 建议1、理解 Pythonic 概念—-详见 Python 中的《Python之禅》 建议2、编写 Pythonic 代码 (1)避免不规范代码,比如只用大小写区分变量、使用容易混淆的变量名、害怕过长变量名等。有时候长的变量名会使代码更加具有可读性。 (2)深入学习 Python 相关知识,比如语言特性、库特性等,比如Python演变过程等。深入学习一两个业内公认的 Pythonic 的代码库,比如Flask等。 建议3:理解 Python 与 C 的不同之处,比如缩进与 {},单引号双引号,三元操作符?, Switch-Case 语句等。 建议4:在代码中适当添加注释 建议5:适当添加空行使代码布局更加合理 建议6:编写函数的 4 个原则 (1)函数设计要尽量短小,嵌套层次不宜过深 (2)函数声明应该做到合理、简单、易用 (3)函数参数设计应该考虑向下兼容 (4)一个函数只做一件事,尽量保证函数粒度的一致性 建议7

简单工厂模式与抽象工厂模式Factory

﹥>﹥吖頭↗ 提交于 2020-08-14 05:28:33
一 简单工厂模式 1 概述 工厂,顾名思义,是用来生产对象的,其好处是实现了类与类实例化之间的解耦,类实例化的过程可能是无比复杂的,当这种复杂实例化的类多起来之后,每次实例化都要重复的编写过程代码;有了工厂模式后,工厂隐藏了对象实例化的过程,用户只需通知工厂要生产的类,即可获得要生产的类; 2 使用示例 阅读笔记时,应先从产品(即main方法)出发,了解产物是如何运作的,从而反推设计; package cn.pattern.创建型.factory; import cn.pattern.创建型.factory.simple.producer.AppleFactory; import cn.pattern.创建型.factory.simple.producer.CherryFactory; import cn.pattern.创建型.factory.simple.product.Food; /** * 简单工厂模式应用 * * @author:wjm * @date:2020/6/30 23:02 */ public class Test { public static void main(String[] args) { /** * 需求:工厂隐藏对象复杂的实例化方法,只对外提供一个实例化对象的方法,便可以简单的使用对象工厂生产对象的实例; */ /** *

装了七台电动机的Mustang 这次福特有点“漂”

帅比萌擦擦* 提交于 2020-08-13 17:56:02
近日,漂移大神VaughnGittin Jr. (VG)发布了一条Ins,内容是他和砖叔KenBlock一起坐在Mustang里的一条视频。他配文说:“我的兄弟和我又一次变成小男孩啦!”视频中VG和砖叔兴奋得像两个刚拿到新玩具的孩子。 4天后VG在社交媒体发布了另外一条视频,原来上一条视频中他们驾驶的是一辆高性能纯电动车——福特MustangMach-E1400原型车,视频中这台纯电动车还与福特性能车家族中的四款车型激烈对决,而这四台福特的性能车型随便一台就足以让性能车爱好者尖叫。 “猛兽”出街——MustangMach-E 1400 在视频中,福特高性能家族五台车并驾齐驱,气场爆棚。正中间的MustangMach-E 1400由VaughnGittin Jr.驾驶,据官方数据显示,这台拥有7个电机的猛兽可输出1400马力,而驾驶他的VaughnGittin Jr. 不仅仅是RTRVehicles创始人,同时也是赛车冠军和专业车手,22座世界顶级飘移赛事冠军奖杯的战绩让他被称为“漂移之王”。 Mustang高性能家族整装待发 与4辆Mustang“神车”同场出镜的MustangMach-E 1400能有多恐怖?当VaughnGittinJr.踩下加速踏板的一瞬间,惊讶地张着嘴巴,睁大双眼,脸上露出了不可思议的表情,隔着屏幕都能感受到那种沁透心脾的推背感。在后来的采访中VG大神也说

六年级「神童」4 天学会基因知识,做出硕博水平研究系造假?

天涯浪子 提交于 2020-08-13 12:04:12
来源:雷锋网 作者:付静 天才少年是“学二代”实锤。 《C10orf67 在结直肠癌发生发展中的功能与机制研究》——乍一看这个标题,可能不少人都觉得这是一篇出自医学大牛之手的学术论文。 但实际上,这是第 34 届全国青少年科技创新大赛小学组三等奖研究项目(结果于 2019 年 12 月 17 日公布),作者是一位名叫陈灵石的昆明市盘龙区盘龙小学六年级学生。 直到近日,天才少年陈灵石和他的晦涩研究在网络上受到热议,不少网友表示: 可能这就是后浪吧。 与此同时,质疑声也不绝于耳。 01 天才少年和他的研究 科学项目的展开往往都源于研究人员的观察与联想。 而在天才少年陈灵石的研究中,包括人类在内的高原哺乳动物对高原的低氧适应与实体瘤疾病被联系到了一起。研究切入点是: 高原哺乳动物(包括人类)的机体对高原适应主要表现之一就是低氧适应,而低氧在人类疾病包括实体瘤中也常发生。因此,高原适应与肿瘤细胞适应具有相似性。 雷锋网了解到,2019 诺贝尔奖生理学或医学奖得主也是将低氧适应与肿瘤病变相联系——来自哈佛医学院达纳-法伯癌症研究所的 William G. Kaelin, Jr.、牛津大学弗朗西斯·克里克研究所的 Peter J. Ratcliffe 以及美国约翰霍普金斯大学医学院的 Gregg. L. Semenza 三人,因在人类及大多数动物细胞感知、适应氧气的变化机制方面的杰出贡献获奖。

亚马逊宣布五个新的公用事业规模的太阳能项目,助力在中国、澳大利亚和美国的全球运营

[亡魂溺海] 提交于 2020-08-12 03:06:00
这五个项目包括亚马逊在中国的首个可再生能源项目,在澳大利亚的第二个项目,在俄亥俄州的第二、第三个项目,以及在弗吉尼亚联邦的第12个项目,总计新增615兆瓦的可再生能源容量,预计每年产生120万兆瓦时的能源,相当于11.3万户一般美国家庭的能源需求 项目将为订单履行中心和AWS数据中心提供可再生能源,这两个中心为全球数百万顾客提供支持 从全球来看,亚马逊拥有91个可再生能源项目,它们的发电容量超过2,900兆瓦,每年提供760万兆瓦以上的能源,进一步支持公司的气候承诺,争取提前10年达到《巴黎协议》要求,至2040年达到净零碳水平 西雅图--(美国商业资讯)--今天,亚马逊(Amazon, NASDAQ: AMZN)宣布在中国、澳大利亚和美国的五个新的可再生能源项目,进一步支持亚马逊到2024年实现80%的可再生能源,到2030年(可能提前到2025年)实现100%的可再生能源以及到2040年达到净零碳的目标。 亚马逊在中国的第一个可再生能源项目是位于山东的100兆瓦(MW)太阳能项目。项目完成后,预计每年将产生12.8万兆瓦时(MWh)的清洁能源。 亚马逊在澳大利亚的第二个可再生能源项目是位于新南威尔士州的105兆瓦的太阳能项目。该项目每年可产生25万兆瓦时的清洁能源,足够为大约4万户一般澳大利亚家庭供电。 亚马逊在美国的最新可再生能源项目包括俄亥俄州的两个新项目

grep系详解

六眼飞鱼酱① 提交于 2020-08-10 18:18:51
linux grep命令详解 简介 grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。 Unix的grep家族包括grep、egrep和fgrep。egrep和fgrep的命令只跟grep有很小不同。egrep是grep的扩展,支持更多的re元字符, fgrep就是fixed grep或fast grep,它们把所有的字母都看作单词,也就是说,正则表达式中的元字符表示回其自身的字面意义,不再特殊。linux使用GNU版本的grep。它功能更强,可以通过-G、-E、-F命令行选项来使用egrep和fgrep的功能。 grep常用用法 复制代码 [root@www ~]# grep [-acinv] [--color=auto] '搜寻字符串' filename 选项与参数: -a :将 binary 文件以 text 文件的方式搜寻数据 -c :计算找到 '搜寻字符串' 的次数 -i :忽略大小写的不同,所以大小写视为相同 -n :顺便输出行号 -v :反向选择,亦即显示出没有 '搜寻字符串' 内容的那一行! --color=auto :可以将找到的关键词部分加上颜色的显示喔! 复制代码 将

ASP.NET Web API Demo OwinSelfHost 自宿主 Swagger Swashbuckle 在线文档

℡╲_俬逩灬. 提交于 2020-08-10 12:55:32
新建Web API工程 选Empty,勾选Web API,不要选择Web API,那样会把MVC勾上,这里不需要MVC Web API工程属性 XML文件用于生成在线文档 新建Windows服务作为Web API的宿主 WebApiHost工程属性 控制台应用程序方便调试 Windows服务安装Microsoft.AspNet.WebApi.OwinSelfHost 工程WebApiDemo需要引用Microsoft.Owin.dll WebApiDemo安装Swashbuckle 应用程序入口 using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using System.ServiceProcess; using System.Text; using System.Threading.Tasks; namespace WebApiHost { static class Program { /// <summary> /// 应用程序的主入口点。 /// </summary> static void Main( string [] args) { RunDebug(); StartService(); } private static void