<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>CS101 on Yu Vision</title>
    <link>http://siyuvision.com/tags/cs101/</link>
    <description>Recent content in CS101 on Yu Vision</description>
    <generator>Hugo</generator>
    <language>zh-CN</language>
    <lastBuildDate>Thu, 22 Dec 2022 00:00:00 +0000</lastBuildDate>
    <atom:link href="http://siyuvision.com/tags/cs101/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>《大话处理器:处理器基础知识读本》</title>
      <link>http://siyuvision.com/post/talkabout-the-cpu/</link>
      <pubDate>Thu, 22 Dec 2022 00:00:00 +0000</pubDate>
      <guid>http://siyuvision.com/post/talkabout-the-cpu/</guid>
      <description>&lt;p&gt;[中国] 万木杨 编著,  《&lt;a href=&#34;https://book.douban.com/subject/6809087/&#34;&gt;大话处理器: 处理器基础知识读本&lt;/a&gt;》&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;你对以往知道的愈多，对未来就看得愈远。
——温斯顿·丘吉尔&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ul&gt;
&lt;li&gt;要做快、做好一件事，基本上有三种方法。一是把事情本身缩短、少做事，这就是处理器流水线效率、分支预测命中率等等技术的发展，体现在软件上就是更好的算法和更短的代码关键路径。二是做得更快、更勤些，这就是处理器上更多的浮点计算单元、更高效的缓存、新的高效指令集直到AVX这样的高密度向量计算指令。三是让别人去做或者和别人一起做，这就是并行，多线程和多进程的并行工作。&lt;/li&gt;
&lt;li&gt;程序员这个职业一般被认为是男性职业，就像我所在的公司，写软件的男女比例都快到10：1了，不想第一位程序员却是个女人，而且是个诗人的女儿，历史真是把玩笑开大了。&lt;/li&gt;
&lt;li&gt;图灵也是人工智能的先驱，他提出了一个模仿游戏试验，后人称为“图灵测试”。该实验把被提问的一个人和一台计算机分别隔离在两间屋子，让提问者对人和计算机进行问答测试。如果提问者分不清回答者是人还是机器，那就证明计算机已具备人的智能。&lt;/li&gt;
&lt;li&gt;约翰·阿塔纳索夫将设计计算机的思路毫不保留地告诉了毛奇莱（John William Mauchly），1946年，毛奇莱和艾科特（John Presper Eckert）建成了ENIAC计算机，并在世界上首次取得了专利。&lt;/li&gt;
&lt;li&gt;冯·诺依曼有句名言：“如果人们不相信数学很简单，只是因为他们没有认识到生活有多复杂。”&lt;/li&gt;
&lt;li&gt;冯·诺依曼定义EDVAC分为5个部分：①运算单元，②控制单元，③存储单元，④输入单元，⑤输出单元，现在的计算机也都使用这个结构，人们把这个结构的计算机称为“冯·诺依曼机”。&lt;/li&gt;
&lt;li&gt;701计算机研制的动力来自于1950年的朝鲜战争，当时老托马斯询问美国政府：公司能为战争做什么？他马上被告知：给国防部捐一台大型的计算机。&lt;/li&gt;
&lt;li&gt;整本书的主题是要想生存，就必须敏感的感受变化，拥抱变化，并采取行动。或许这句话翻译成“唯有惶者才能生存”可能更好，而这句话正是另一企业家任正非的名言，可见英雄通常所见略同。&lt;/li&gt;
&lt;li&gt;1992年，著名作家罗伯特·克伦格利正式将微软命名为“微软帝国”。借助强大的市场优势和金钱实力，微软就像一个大鲨鱼，运用从任我行那里学到的“吸星大法”，将许多公司创造的技术纳入自己的Windows中，使其成为一个无所不能、无所不包的百宝箱。凡是微软想打击的公司，都逃不出它的魔掌，如Sun公司、网景公司等。&lt;/li&gt;
&lt;li&gt;盖茨在哈佛学的就是法律专业，盖茨的老爸在退休前，是Preston Gates &amp;amp; Ellis律师事务所的合伙人，这家律师事务所后来更名为K&amp;amp;L Gates，是全美十大律师事务所之一。&lt;/li&gt;
&lt;li&gt;当我们把计算机和人做类比时，硬件就相当于人的身体，软件就相当于人的三魂七魄（中国古代的说法），或者灵魂（西方宗教的说法），或者思维（现代的说法）。&lt;/li&gt;
&lt;li&gt;光、电、磁等特性可以作为存储介质，光盘使用光特性，内存和U盘使用电特性，现在硬盘的存储介质还是以磁盘为主，使用磁特性。&lt;/li&gt;
&lt;li&gt;在处理器行业，Intel是老大，在半导体存储器行业，三星半导体是老大。三星是最大的DRAM和闪存生产公司。&lt;/li&gt;
&lt;li&gt;南桥和北桥有明确的分工，北桥负责处理器与那些需要较高通信带宽部件间的通信，主要是存储器和显卡，南桥负责处理器与较低速度部件间的接口，通常连接各种输入输出设备，如USB、硬盘等。&lt;/li&gt;
&lt;li&gt;计算机的性能主要来源于CPU、内存和显卡的性能，但是，如果没有适合的主板和芯片组，处理器与其他部件的数据通信就会受到限制，影响处理器的运行速度，就好比再好的跑车，在乡间小路上也是跑不快的。&lt;/li&gt;
&lt;li&gt;现在用的QWERTY键盘最早来自于打字机，专家们发现，QWERTY键盘的效率并不是最高，又提出了一套DVORAK的键盘。但是很多东西，人们一旦熟悉了，就不想再改变了，因此一直以来，人们都习惯于屏幕，认为只有屏幕才能显示。习惯是非常可怕的，习惯淹没了人们的创造性。不过还是有很多人打破常规，想到了一些特别的东西。&lt;/li&gt;
&lt;li&gt;HDMI全称是High Definition Multimedia Interface，于2002年4月，由日立、松下、飞利浦、索尼、汤姆逊、东芝和Silicon Image等7家公司联合组成HDMI组织。&lt;/li&gt;
&lt;li&gt;《非诚勿扰2》中有句经典台词：“婚姻怎么选都是错，长久的婚姻就是将错就错。”秉持这一理念，Intel决定一条路走到黑，将兼容性进行到底，但是CISC架构很难提升性能的压力却仍然摆在Intel面前。不过世界上没有什么迈不过去的坎，任何困难都有解决的方法，David B. Papworth和他的同事一起设计了Pentium Pro处理器，它的微架构是Intel著名的P6，在很多教科书上都会介绍。在这个处理器中，x86指令集被先解码为类似于RISC指令的微操作（microoperations，简称为uops），以后的执行过程采用RISC内核，这种架构一直延续至今，成为一代经典。CISC这种古老的架构，通过巧妙的设计，又一次焕发新春，可以说是老树发新芽的典范，Papworth也因此在Intel内获得很多奖项，成为Intel Fellow。&lt;/li&gt;
&lt;li&gt;“复杂”外表下的“简单”芯 这种处理器结构相较于没有兼容性压力的纯RISC处理器要复杂，但好在有兼容性的优势来保证市场。&lt;/li&gt;
&lt;li&gt;RISC和CISC都是时代的产物，也无所谓谁好谁坏。RISC作为新兴事物，在很多思想上要更先进，不过CISC也有它的一些优点。&lt;/li&gt;
&lt;li&gt;处理器有两大核心技术，一是芯片制程工艺（32nm、22nm等）；二是处理器微架构。&lt;/li&gt;
&lt;li&gt;Intel处理器开发有一个非常著名的tick-tock（工艺年，架构年）战略。Tick-Tock就是时钟的“嘀嗒”，一个嘀嗒代表着一秒，而在Intel的处理器发展战略上，每一个嘀嗒代表着两年一次的处理器升级。&lt;/li&gt;
&lt;li&gt;ARM和x86可以说是处理器领域商业上最成功的两个架构，ARM只是一家小公司，它的人数不到2000人，ARM架构之所以这么受欢迎，在于它从设计之初就将低功耗、低成本的优先级放在了高性能的前面。&lt;/li&gt;
&lt;li&gt;与x86竞争的面向高性能的处理器都逐渐退出了历史舞台，而ARM却与x86相反，侧重于低功耗、低成本，虽然技术实力存在不小的差距，却活得很滋润。&lt;/li&gt;
&lt;li&gt;ARM公司自己不生产芯片，而是向半导体公司提供指令集授权、内核授权，其他公司使用ARM的处理器内核设计生产自己的处理器芯片。&lt;/li&gt;
&lt;li&gt;MIPS全称为Microprocessor without Interlocked Piped Stages，无内部互锁流水级的微处理器。&lt;/li&gt;
&lt;li&gt;想当初，苹果和IBM是两个死对头，在个人计算机市场打得你死我活，而如今为了共同的利益，对付Wintel联盟，它们又走到了一起，可见，在商场上，没有永远的对手，只有永远的利益。&lt;/li&gt;
&lt;li&gt;每天早上，一只非洲羚羊醒来，它就知道要比跑得最快的非洲雄狮还要快，否则它就会被吃掉；每天早上，一只非洲雄狮醒来，它就知道必须比跑得最慢的羚羊要快，否则它就会饿死。不管你是狮子还是羚羊，太阳升起的时候你就得开始跑了。同样的一幕在处理器行业也一样发生着。&lt;/li&gt;
&lt;li&gt;人们买东西都会有一个特点：喜欢去人多的地方买。越拥挤，就会觉得店子越好，就越要挤进去。股市也有类似的一句话，叫：追涨杀跌。&lt;/li&gt;
&lt;li&gt;大端、小端这两个术语来源于小说《格利弗游记》（Gulliver&amp;rsquo;s Travels）。小人国里的小人们分成了两大阵营：一派敲破鸡蛋“大”的一头吃鸡蛋，一派敲破鸡蛋“小”的一头吃鸡蛋。其实怎么吃都没有关系，只是习惯不同。&lt;/li&gt;
&lt;li&gt;其实内存也不是不能提速，只是这一切都是个成本问题。古人很早就告诉我们：鱼和熊掌不能兼得，速度快的存储器单位成本下的容量小，容量大的存储器速度慢。总之，越快的存储器越贵，成本越高。&lt;/li&gt;
&lt;li&gt;现实生活中常常会出现因为沟通不畅而导致的扯皮，一方改变了某些东西，又没有及时通知到另一方，导致两方掌握的信息不一致，这就是一致性问题。&lt;/li&gt;
&lt;li&gt;算法的优化，能明显的减少执行程序所需要的指令数，也即运算量。比较有名的快速算法包括：FFT算法（快速傅里叶变换）、快速排序算法等。&lt;/li&gt;
&lt;/ul&gt;</description>
    </item>
    <item>
      <title>Markdown Syntax</title>
      <link>http://siyuvision.com/post/markdown-syntax/</link>
      <pubDate>Sun, 09 Aug 2020 00:00:00 +0000</pubDate>
      <guid>http://siyuvision.com/post/markdown-syntax/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://zh.wikipedia.org/wiki/Markdown&#34;&gt;Markdown&lt;/a&gt;是一种轻量级标记语言，创始人为约翰·格鲁伯（英语：John Gruber）。它允许人们使用易读易写的纯文本格式编写文档，然后转换成有效的XHTML（或者HTML）文档。&lt;/p&gt;</description>
    </item>
    <item>
      <title>WP Post</title>
      <link>http://siyuvision.com/post/wp-post/</link>
      <pubDate>Thu, 06 Aug 2020 00:00:00 +0000</pubDate>
      <guid>http://siyuvision.com/post/wp-post/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://zh.wikipedia.org/wiki/WordPress&#34;&gt;WordPress&lt;/a&gt;是一个以PHP和MySQL为平台的自由开源的博客软件和内容管理系统。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Encode and Decode</title>
      <link>http://siyuvision.com/post/encode-and-decode/</link>
      <pubDate>Sun, 02 Aug 2020 00:00:00 +0000</pubDate>
      <guid>http://siyuvision.com/post/encode-and-decode/</guid>
      <description>&lt;h3 id=&#34;利用encode和decode解决乱码问题&#34;&gt;利用encode和decode解决乱码问题&lt;/h3&gt;
&lt;p&gt;字符串在python内部的表示是Unicode编码，在做编码转换时，通常需要以Unicode作为中间编码，即先将其他编码的字符串解码（decode）成Unicode，再从Unicode编码（encode）成另一种编码。&lt;/p&gt;</description>
    </item>
    <item>
      <title>One Line Code</title>
      <link>http://siyuvision.com/post/one-line-code/</link>
      <pubDate>Wed, 17 Jun 2020 00:00:00 +0000</pubDate>
      <guid>http://siyuvision.com/post/one-line-code/</guid>
      <description>&lt;p&gt;&lt;strong&gt;Export file/folder names in selected directory&lt;/strong&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>JS Basics</title>
      <link>http://siyuvision.com/post/javascript-basics/</link>
      <pubDate>Sun, 14 Jun 2020 00:00:00 +0000</pubDate>
      <guid>http://siyuvision.com/post/javascript-basics/</guid>
      <description>&lt;p&gt;Recently, I have some interests in the programming language &lt;a href=&#34;https://en.wikipedia.org/wiki/JavaScript&#34;&gt;JavaScript (JS)&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>The Shell</title>
      <link>http://siyuvision.com/post/the-shell/</link>
      <pubDate>Fri, 05 Jun 2020 00:00:00 +0000</pubDate>
      <guid>http://siyuvision.com/post/the-shell/</guid>
      <description>&lt;p&gt;We use computer a lot.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
