<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[iosJohnson的专栏]]></title><description><![CDATA[认真做事，良心做人]]></description><link>https://blog.youkuaiyun.com/iosJohnson</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; iosJohnson]]></copyright><item><title><![CDATA[74LS163计数器及其应用]]></title><link>https://blog.youkuaiyun.com/iosJohnson/article/details/53288226</link><guid>https://blog.youkuaiyun.com/iosJohnson/article/details/53288226</guid><author>iosJohnson</author><pubDate>Tue, 22 Nov 2016 16:55:50 +0800</pubDate><description><![CDATA[概述在前面的课程中，讨论了用基本的触发器设计减法计数器，也提到了其缺陷，即只有脉冲输入，没有其它输入，不受控。因此，硬件工程师根据设计中常用的电路设计了163计数器，本节内容首先介绍74LS163的基本功能，然后以163为基础设计一个分频器和一个2421码模8电路（重点讲设计思路，verilog程序请自行完成）。74LS163计数器74LS163计数器有5个控制端、4个数据输入端和5个输出端，其逻辑]]></description><category></category></item><item><title><![CDATA[利用触发器设计计数器]]></title><link>https://blog.youkuaiyun.com/iosJohnson/article/details/53170308</link><guid>https://blog.youkuaiyun.com/iosJohnson/article/details/53170308</guid><author>iosJohnson</author><pubDate>Tue, 15 Nov 2016 13:25:36 +0800</pubDate><description><![CDATA[概述前面的课程中，介绍了基本触发器的功能特性，对触发器的内部电路进行了分析；然后还对时序电路分析给出了基本思路，即抓住三个核心方程：输出方程、激励方程、次态方程。学习组合电路和基本触发器的目的是为了设计电路，数字逻辑这门课程的目的是能够设计简单的同步时序电路，并对其简单分析，下文通过一个模16的减1计数器进行说明。基本流程要设计时序电路，首先必须要对功能需求进行分析，模16减1计数器的功能需求很显然]]></description><category></category></item><item><title><![CDATA[时序逻辑中的Verilog程序解读]]></title><link>https://blog.youkuaiyun.com/iosJohnson/article/details/53159683</link><guid>https://blog.youkuaiyun.com/iosJohnson/article/details/53159683</guid><author>iosJohnson</author><pubDate>Mon, 14 Nov 2016 15:46:02 +0800</pubDate><description><![CDATA[同步时序逻辑电路中由于引入了时钟脉冲，在写verilog程序时，习惯面向过程或面向对象编程思维的童鞋带来理解上的困难。在理解verilog程序时，基本要点是从电路出发，抛弃传统的面向过程或面向对象思维，而从电路构造和电流变化的角度理解。如下面的时序逻辑电路:当时序电路处于稳态，时钟脉冲没有到来时，并且!Q0的值为1时，X的变化只会影响到Z的输出，而两个J-K触发器状态不会有任何改变其对应的veril]]></description><category></category></item><item><title><![CDATA[React Native手势处理详解]]></title><link>https://blog.youkuaiyun.com/iosJohnson/article/details/53127830</link><guid>https://blog.youkuaiyun.com/iosJohnson/article/details/53127830</guid><author>iosJohnson</author><pubDate>Fri, 11 Nov 2016 12:58:20 +0800</pubDate><description><![CDATA[转自：http://www.race604.com/react-native-touch-event/，深度好文！！！
触控是移动设备的核心功能，也移动应用交互的基础，Android 和 iOS 各自都有完善的触摸事件处理机制。React Native（以下简称 RN）提供了一套统一的处理方式，能够方便的处理界面中组件的触摸事件、用户手势等。本文尝试介绍 RN 中触摸事件处理。

1. RN]]></description><category></category></item><item><title><![CDATA[mongodb 3.2 知识简记-基础知识和基本操作]]></title><link>https://blog.youkuaiyun.com/iosJohnson/article/details/53118457</link><guid>https://blog.youkuaiyun.com/iosJohnson/article/details/53118457</guid><author>iosJohnson</author><pubDate>Thu, 10 Nov 2016 18:02:44 +0800</pubDate><description><![CDATA[基础
use db   选择数据库
创建数据库。当数据库不存在时，第一次使用并且存数数据时，创建数据库。如   use myDb 
  db.myNewCollection1.insert({value: 10}) 
  创建数据库myDb, 创建myNewCollection1 
  注意： mongodb中的collection类似于关系数据库中的table，通常情况下不需要使用db.creat]]></description><category></category></item><item><title><![CDATA[Golang中的defer, panic, recover]]></title><link>https://blog.youkuaiyun.com/iosJohnson/article/details/53118447</link><guid>https://blog.youkuaiyun.com/iosJohnson/article/details/53118447</guid><author>iosJohnson</author><pubDate>Thu, 10 Nov 2016 18:01:56 +0800</pubDate><description><![CDATA[golang中没有类似Java/C++等面向对象编程语言中的try…catch…finally…语句结构，对于有些童鞋可能不太习惯。对于从C语言转过来的童鞋，golang提供了一系列相对较好的函数defer，panic，recover。 
从英语的语义看，defer表示“延迟”，panic表示“惊恐”，recover表示“恢复”，那在golang中，提供这些函数的意义何在呢？我们先看一个简单的例子：]]></description><category></category></item><item><title><![CDATA[微信小程序瞎想]]></title><link>https://blog.youkuaiyun.com/iosJohnson/article/details/53118438</link><guid>https://blog.youkuaiyun.com/iosJohnson/article/details/53118438</guid><author>iosJohnson</author><pubDate>Thu, 10 Nov 2016 18:01:05 +0800</pubDate><description><![CDATA[微信小程序内测发布的当天，我就着急忙慌的去官网看了，心里想着是不是与我想的一致，果不其然，与我的预期基本一致，基本上可以断定是Ionic的翻版，当然，也有很多人说与RN类似。从技术的角度看，微信小程序就是H5程序，其中的app.json是配置文件，app.wxss文件是样式表文件，app.js是程序主入口文件。为了方便开发UI，还提供了组件(component)及一系列的方法（有心的童鞋可以去看Io]]></description><category></category></item><item><title><![CDATA[Typescript简记]]></title><link>https://blog.youkuaiyun.com/iosJohnson/article/details/53118429</link><guid>https://blog.youkuaiyun.com/iosJohnson/article/details/53118429</guid><author>iosJohnson</author><pubDate>Thu, 10 Nov 2016 18:00:19 +0800</pubDate><description><![CDATA[概述typescript是微软推出的一门扩展js脚本语言，现在由微软和google在推，google的angular.js的2.0版本以typescript为基础，所以这门语言应该是靠谱的。早期我也经常用node.js, node-webkit，都是用js写，但是里面的各种蛋疼语法挺烦人的，特别是读别人的代码，一坨坨回调，一坨坨函数域变量，头疼。以前typespcript推的时候，因为本能对微软技术]]></description><category></category></item><item><title><![CDATA[时序电路分析]]></title><link>https://blog.youkuaiyun.com/iosJohnson/article/details/53118260</link><guid>https://blog.youkuaiyun.com/iosJohnson/article/details/53118260</guid><author>iosJohnson</author><pubDate>Thu, 10 Nov 2016 17:50:24 +0800</pubDate><description><![CDATA[概述学习数字逻辑这门课程的目的有两个，第一是为了后续的电路设计，是硬件工程师的入门课程；第二则是为了更好地理解计算机的工作原理，为后续嵌入式开发、软件开发等打下坚实的基础。绝大部分人应该属于后者，毕竟纯粹的硬件开发工程师职位不多。时序电路是数字逻辑这门课的关键，因为引入了时间这一维度，理解掌握其功能特性的难度比组合逻辑要高，因此，很多童鞋可能学到这有点晕，这是正常现象。应对办法也很简单：熟记典型的几]]></description><category></category></item><item><title><![CDATA[下降沿J-K触发器分析]]></title><link>https://blog.youkuaiyun.com/iosJohnson/article/details/53118256</link><guid>https://blog.youkuaiyun.com/iosJohnson/article/details/53118256</guid><author>iosJohnson</author><pubDate>Thu, 10 Nov 2016 17:50:02 +0800</pubDate><description><![CDATA[这个分析卡壳了，主要是因为没有对电路中的门进行编号，很容易把自己搞晕。于是，重新编号进行分析，电路图如下所示：初始时，不妨假设Q初态为0，!Q初态为1， J=0， K=1分析的时候，很容易从CP=0开始分析，此时，J和K是无法送到5门和6门的（7门和8门输出为1），CP=0，导致5门和6门维持一个稳态（即5,6,7,8门是被锁住的），此时
  
  若5门输出为0，6门输出为1，由此，3门输出1,4]]></description><category></category></item><item><title><![CDATA[触发器及其电路分析]]></title><link>https://blog.youkuaiyun.com/iosJohnson/article/details/53118248</link><guid>https://blog.youkuaiyun.com/iosJohnson/article/details/53118248</guid><author>iosJohnson</author><pubDate>Thu, 10 Nov 2016 17:49:30 +0800</pubDate><description><![CDATA[概述时序电路是数字逻辑课程的核心部分，也是学习后续硬件相关课程的重要基础部分，PC中的计数器、内存、倍频／分频器等都是典型的时序电路。前面学习的组合电路，电路的输出只与电路的输入相关，不具备保存数据功能，电路中也不允许存在回路。而在时序电路中，一大功能便是要求保存数据。时序电路通常分为Moore型和Mealy型，Moore型电路的输出只与电路的当前状态（就是存储的数据）相关，Mealy型电路则与电路]]></description><category></category></item><item><title><![CDATA[竞争与险象]]></title><link>https://blog.youkuaiyun.com/iosJohnson/article/details/53118240</link><guid>https://blog.youkuaiyun.com/iosJohnson/article/details/53118240</guid><author>iosJohnson</author><pubDate>Thu, 10 Nov 2016 17:48:56 +0800</pubDate><description><![CDATA[本来是准备花一次课（两个课时）好好讲讲这方面的内容的，实验课老师紧催慢催，花了不到一节课就过去了，感觉很多东西都来不及讲，借助这篇简述详细说说，希望对大家能有点帮助。概述前面的课程中，我们学习的都是理想情况，即：假设电信号经过线路和每个逻辑门电路时，没有延迟，在这一前提下，得到非常规整的波形图。然而，在现实中，这种情况是不可能存在的（否则，我们学完这门课就能造CPU了），信号经过线路和逻辑门都会有延]]></description><category></category></item><item><title><![CDATA[选择器和分配器]]></title><link>https://blog.youkuaiyun.com/iosJohnson/article/details/53118231</link><guid>https://blog.youkuaiyun.com/iosJohnson/article/details/53118231</guid><author>iosJohnson</author><pubDate>Thu, 10 Nov 2016 17:48:21 +0800</pubDate><description><![CDATA[概述选择器和分配器是组合电路中十分重要的逻辑元件。选择器用于从多个输入数据中选择一个输出；而分配器则刚好做相反的工作，将多个输入端输出到指定的输出端。按照惯例，本文首先介绍相应的应用背景，然后讲解选择器和分配器的工作原理。背景选择器和分配器是电路中不可或缺的两个器件。童鞋们都知道，CPU中存在数量有限的寄存器（MIPS结构中一般是32个），CPU的ALU计算时，从寄存器中取数据进行计算。所有的寄存器]]></description><category></category></item><item><title><![CDATA[编码器]]></title><link>https://blog.youkuaiyun.com/iosJohnson/article/details/53118218</link><guid>https://blog.youkuaiyun.com/iosJohnson/article/details/53118218</guid><author>iosJohnson</author><pubDate>Thu, 10 Nov 2016 17:47:12 +0800</pubDate><description><![CDATA[概述在译码器基础和译码器应用中分别对译码器的真值表、电路图、逻辑符号等进行了较为详细的讲解。编码可以看成是译码的逆过程。通常，编码是将计算机无法直接识别的数据，翻译成二进制码。大家学习C语言时，一定对ASCII码有所了解，它用8位二进制串表示26个字母大小写、数字以及一些常见的控制符等；coding较多的童鞋肯定也对UTF－8，UTF－16等概念比较熟悉，这些编码将全球所有的字符（特别是中日韩、阿拉]]></description><category></category></item><item><title><![CDATA[半加器、全加器及其应用]]></title><link>https://blog.youkuaiyun.com/iosJohnson/article/details/53118211</link><guid>https://blog.youkuaiyun.com/iosJohnson/article/details/53118211</guid><author>iosJohnson</author><pubDate>Thu, 10 Nov 2016 17:46:37 +0800</pubDate><description><![CDATA[半加器、全加器是组合电路中的基本元器件，也是CPU中处理加法运算的核心，理解、掌握并熟练应用是硬件课程的最基本要求。本文简单介绍半加器、全加器，重点对如何构造高效率的加法器进行分析。半加器和全加器所谓半加器，是指对两位二进制数实施加法操作的元器件。其真值表、电路图和逻辑符号分别如下图所示： 
根据真值表，其输入输出之间的对应关系为：
  S = A!B + !AB (!号表示逻辑非) 
  C =]]></description><category></category></item><item><title><![CDATA[译码器的应用]]></title><link>https://blog.youkuaiyun.com/iosJohnson/article/details/53118186</link><guid>https://blog.youkuaiyun.com/iosJohnson/article/details/53118186</guid><author>iosJohnson</author><pubDate>Thu, 10 Nov 2016 17:44:54 +0800</pubDate><description><![CDATA[三种基本译码器在译码器基础中，解释了完全译码器（n-2n）的基本工作原理，即：当使能端有效时：
  Yi = mi 或者 
  /Yi = !mi  (注：这里的!表示非号)
除了完全译码器之外，还有4-10线译码器，七段显示译码器，相对也比较简单，这里简单进行介绍： 
  - 4-10译码器 
 
由真值表可以看出，当A3A2A1A0的取值为[0000~1001]时，输出有效，其它情况均为无效，其]]></description><category></category></item><item><title><![CDATA[译码器基础]]></title><link>https://blog.youkuaiyun.com/iosJohnson/article/details/53118164</link><guid>https://blog.youkuaiyun.com/iosJohnson/article/details/53118164</guid><author>iosJohnson</author><pubDate>Thu, 10 Nov 2016 17:42:43 +0800</pubDate><description><![CDATA[初次接触译码器的童鞋可能会问，译码器是什么？首先，我们需要明确，电脑和人类沟通，需要转换。因为人类对于抽象语言比较擅长，而当前的计算机本质上只能识别0、1二进制串。因此，人类所表达的知识要被电脑接受，需要将其转换编码成二进制数，这一过程可以理解为编码；而人类要理解计算机给我们计算的结果，则需要将结果解释成我们能理解的对象（如七段显示译码器中显示的数据），这一个过程，其实就是译码。另外，译码器不是客观]]></description><category></category></item><item><title><![CDATA[组合电路、时序电路在计算机课程中的地位]]></title><link>https://blog.youkuaiyun.com/iosJohnson/article/details/53118155</link><guid>https://blog.youkuaiyun.com/iosJohnson/article/details/53118155</guid><author>iosJohnson</author><pubDate>Thu, 10 Nov 2016 17:42:03 +0800</pubDate><description><![CDATA[这个题目是我临时想的，不知道是否准确，一直想写一个类似的东西，希望能够引起童鞋们关注硬件并喜欢上硬件。我是文科出生，研究生阶段才转向计算机，中间有很长一段时间都只做软件理论相关研究和一些具体的软件项目，包括编译器、电力系统监控器、软件测试工具研发等；直到2009年，才开始陆陆续续接触一些硬件项目，说是硬件项目，其实主要是一些嵌入式的项目，如世界杯前做的3G转Wifi和自己玩的一些小车和传感器等。在做]]></description><category></category></item><item><title><![CDATA[关于补码的解释]]></title><link>https://blog.youkuaiyun.com/iosJohnson/article/details/53118141</link><guid>https://blog.youkuaiyun.com/iosJohnson/article/details/53118141</guid><author>iosJohnson</author><pubDate>Thu, 10 Nov 2016 17:40:47 +0800</pubDate><description><![CDATA[今天讲补码的时候卡壳了，有点尴尬，太想当然了，向童鞋们道歉！在这里把补码的原理解释一遍。先看8位的二进制的范围[00000000, 11111111]，我们暂时只考虑真值，即这里面所有的数都表示数值，其对应的十进制数的范围为[0, 255]，也就是说8位二进制数的模为256，如果把这个范围分为两部分[00000000, 01111111]和[10000000, 11111111]，后面的这一部分是不]]></description><category></category></item><item><title><![CDATA[计算机中的原码、反码、补码分析]]></title><link>https://blog.youkuaiyun.com/iosJohnson/article/details/53118131</link><guid>https://blog.youkuaiyun.com/iosJohnson/article/details/53118131</guid><author>iosJohnson</author><pubDate>Thu, 10 Nov 2016 17:39:54 +0800</pubDate><description><![CDATA[今天给学生上数字逻辑第一节课，主要讲了数制，后面简单提及了原码、反码和补码，碰到了两个问题：第一，十进制数转八进制数，学生练习时卡壳，不知道无从下手；第二，原本以为原码、反码、补码应该是一年级甚至中学时就应该解决的问题，实际上原来根本不是这么回事。中学老师即使讲过，估计也是对付考试的方式简单提及，并未从本质上进行讲解（那时候他们忙着对付高考，哪有闲工夫讲这些题外的知识）。真值首先，我们明白计算机中的]]></description><category></category></item></channel></rss>