电视状态码c00011怎么解决

13次阅读

ASCll 码是什么?

ascll

信息在计算机上是用二进制表示的,这种表示法让人理解就很困难。因此计算机上都配有输入和输出设备,这些设备的主要目的就是,以一种人类可阅读的形式将信息在这些设备上显示出来供人阅读理解。为保证人类和设备,设备和计算机之间能进行正确的信息交换,人们编制的统一的信息交换代码,这就是 ASCII 码表,它的全称是“美国信息交换标准代码”。

ASCII

美国标准信息交换标准码 (ASCII)

美国标准信息交换代码 (American Standard Code for Information Interchange, ASCII) 是由美国国家标准学会 (American National Standard Institute , ANSI) 制定的,标准的单字节字符编码方案,用于基于文本的数据。起始于 50 年代后期,在 1967 年定案。它最初是美国国家标准,供不同计算机在相互通信时用作共同遵守的西文字符编码标准,后被 ISO 及 CCITT 等国际组织采用。

ASCII 码使用指定的 7 位或 8 位二进制数组合来表示 128 或 256 种可能的字符。标准 ASCII 码使用 7 位二进制数来表示所有的大写和小写字母,数字 0 到 9、标点符号,以及在美式英语中使用的特殊控制字符。目前许多基于 x86 的系统都支持使用扩展(或“高”)ASCII。扩展 ASCII 码允许将每个字符的第 8 位用于确定附加的 128 个特殊符号字符、外来语字母和图形符号。

值 8、9、10 和 13 分别转换为退格、制表、换行和回车字符。它们并没有特定的图形显示,但会依不同的应用程序,而对文本显示有不同的影响

控制字符

二进制 十进制 十六进制 缩写 解释

0000 0000 0 00 NUL 空字符(Null)

0000 0001 1 01 SOH 标题开始

0000 0010 2 02 STX 正文开始

0000 0011 3 03 ETX 正文结束

0000 0100 4 04 EOT 传输结束

0000 0101 5 05 ENQ 请求

0000 0110 6 06 ACK 收到通知

0000 0111 7 07 BEL 响铃

0000 1000 8 08 BS 退格

0000 1001 9 09 HT 水平制表符

0000 1010 10 0A LF 换行键

0000 1011 11 0B VT 垂直制表符

0000 1100 12 0C FF 换页键

0000 1101 13 0D CR 回车键

0000 1110 14 0E SO 不用切换

0000 1111 15 0F SI 启用切换

0001 0000 16 10 DLE 数据链路转义

0001 0001 17 11 DC1 设备控制 1

0001 0010 18 12 DC2 设备控制 2

0001 0011 19 13 DC3 设备控制 3

0001 0100 20 14 DC4 设备控制 4

0001 0101 21 15 NAK 拒绝接收

0001 0110 22 16 SYN 同步空闲

0001 0111 23 17 ETB 传输块结束

0001 1000 24 18 CAN 取消

0001 1001 25 19 EM 介质中断

0001 1010 26 1A SUB 替补

0001 1011 27 1B ESC 溢出

0001 1100 28 1C FS 文件分割符

0001 1101 29 1D GS 分组符

0001 1110 30 1E RS 记录分离符

0001 1111 31 1F US 单元分隔符

0111 1111 127 7F DEL 删除

可显示字符

二进制 十进制 十六进制 字符

0010 0000 32 20 空格

0010 0001 33 21 !

0010 0010 34 22 “

0010 0011 35 23 #

0010 0100 36 24 $

0010 0101 37 25 %

0010 0110 38 26 &

0010 0111 39 27 ‘

0010 1000 40 28 (

0010 1001 41 29 )

0010 1010 42 2A *

0010 1011 43 2B +

0010 1100 44 2C ,

0010 1101 45 2D –

0010 1110 46 2E .

0010 1111 47 2F /

0011 0000 48 30 0

0011 0001 49 31 1

0011 0010 50 32 2

0011 0011 51 33 3

0011 0100 52 34 4

0011 0101 53 35 5

0011 0110 54 36 6

0011 0111 55 37 7

0011 1000 56 38 8

0011 1001 57 39 9

0011 1010 58 3A :

0011 1011 59 3B ;

0011 1100 60 3C <

0011 1101 61 3D =

0011 1110 62 3E >

0011 1111 63 3F ?

0100 0000 64 40 @

可显示字符

二进制 十进制 十六进制 字符

0100 0001 65 41 A

0100 0010 66 42 B

0100 0011 67 43 C

0100 0100 68 44 D

0100 0101 69 45 E

0100 0110 70 46 F

0100 0111 71 47 G

0100 1000 72 48 H

0100 1001 73 49 I

0100 1010 74 4A J

0100 1011 75 4B K

0100 1100 76 4C L

0100 1101 77 4D M

0100 1110 78 4E N

0100 1111 79 4F O

0101 0000 80 50 P

0101 0001 81 51 Q

0101 0010 82 52 R

0101 0011 83 53 S

0101 0100 84 54 T

0101 0101 85 55 U

0101 0110 86 56 V

0101 0111 87 57 W

0101 1000 88 58 X

0101 1001 89 59 Y

0101 1010 90 5A Z

0101 1011 91 5B [

0101 1100 92 5C \

0101 1101 93 5D ]

0101 1110 94 5E ^

0101 1111 95 5F _

0110 0000 96 60 `

可显示字符

二进制 十进制 十六进制 字符

0110 0001 97 61 a

0110 0010 98 62 b

0110 0011 99 63 c

0110 0100 100 64 d

0110 0101 101 65 e

0110 0110 102 66 f

0110 0111 103 67 g

0110 1000 104 68 h

0110 1001 105 69 i

0110 1010 106 6A j

0110 1011 107 6B k

0110 1100 108 6C l

0110 1101 109 6D m

0110 1110 110 6E n

0110 1111 111 6F o

0111 0000 112 70 p

0111 0001 113 71 q

0111 0010 114 72 r

0111 0011 115 73 s

0111 0100 116 74 t

0111 0101 117 75 u

0111 0110 118 76 v

0111 0111 119 77 w

0111 1000 120 78 x

0111 1001 121 79 y

0111 1010 122 7A z

0111 1011 123 7B {

0111 1100 124 7C |

0111 1101 125 7D }

0111 1110 126 7E ~

cpu 是怎么工作的?

对于没有硬件和电子相关知识的人来说,“计算机到底为什么能工作”这个问题确实比较深奥。
首先你需要明白计算机的 CPU 实际上和汽车的引擎是一个道理,只不过一个是机械的,一个是电子的。它们在飞速运转中遵循某些固定的状态,外界通过对其输入的控制来产生输出。对于 CPU 来说,带动其运转的东西叫“时钟”。时钟在 0 和 1 之间按特定频率变换,由此同步各个电路组件的状态变化,以便输出正确的值。(有些人没事儿就喜欢超频,说白了就是在加快这个时钟的变换频率。)时钟和寄存器有关,但是为了不跑题,我就不具体解释了。

为了便于理解,我们在此问题中只讨论 MIPS 架构的 CPU。

首先,指令【instruction】由更上层的编程语言(比如 C)编译而来,它在内存中是许多串由 0 和 1 组成的数列,本身代表的就是电路通断,不用再次进行编译。

由于早期的 MIPS 是基于“精简指令集”的 32 位计算机架构,因此每条指令长度一样,都是 32 位的,每条指令都是 32 个“0 和 1”。我们日常使用的 CPU(比如酷睿 i7)并不基于“精简指令集”,而是基于“复杂指令集”。它们所用的指令长度并不一样,因此它们的电路设计更加复杂,但基本原理还是一样的,同样是一堆“0 和 1”。

看上面的表
第一行 add
add $1 $2 $3 这条指令在内存中应该长什么样?
000000 | 00010 | 00011 | 00001 | 00000 | 100000
这些 0 和 1 用竖线隔开后,每一块都用来控制不同的电路部件。
比如 Rs Rt 和 Rd 代表的是这次运算所需要的三个寄存器,
寄存器是比内存还要快许多,可以理解为计算机中最基本的储蓄部件(算完了您得就近找个地儿搁啊)
再比如 funct 指的是算术逻辑单元【Arithmetic Logic Unit】所进行的相关操作,100000 对于算术逻辑单元,代表的是“加”。

因此,如果把 00000000010000110000100000100000 翻译成人话,是这个意思:
“将寄存器 $2 和寄存器 $3 的数进行相加,并把结果存入寄存器 $1”

以上是 CPU 工作原理的一部分。

至于“它如何控制某个晶体管的通断状态”,
首先,电路中这些所需的部件,都是由晶体管所组成的。
比如,上面提到的算术逻辑单元【ALU】:

这是某个 ALU 的门级电路,尽管这不是 MIPS 所用到的 ALU,但他们类似。
A 和 B 是输入,Result 是计算结果输出,Carry-out 是进位输出。由于这部分电路不含任何寄存器,我们忽略电路做出反应所需要的时间,并且默认电路的输出会随着输入的改变而立即改变。
你可以看到 ALU Opcode,这就是上文提到的 funct,你输入三位不同的控制信号,它会进行不同的操作。比如 ALU Opcode = 000 在这里代表将 A 和 B 相加。

电路中的逻辑门实现了程序中最基本的布尔逻辑,相信大家对最基本的编程都有一点了解。
神马叫布尔逻辑?
举个比较笼统的例子,你在 C 语言中写了这么几行:

// 判断变量 x 是否是 100 和 30 中间的一个数, &&(and)表示同时满足两个条件,and 就是布尔逻辑的一种。
if ((x < 100) && (x > 30)) {
// 如果是,就。。。。
}

那么这个“同时满足”到底应该由 CPU 的什么东西来判断?
答案是某种逻辑门或几种逻辑门的组合。

因此,我们再进一步放大,看这个 ALU 中的逻辑部件之一:与门【AND gate】
与门有什么性质?
比如:
1 AND 0 等于 0
1 AND 1 等于 1

简而言之,与门可以用来对比两个输入。因为对于它来说,只有当输入的 A 和 B 都为高电平(1)时,输出才会是高电平(1),否则输出低电平(0)。

最后,这个与门,其实是由

晶体管

组成的。希望你已经对这个问题有了一个大概的理解。以后有时间会再补充。

4 个比特的编码可以表示什么个不同状态?

可以表示 16 个不同的状态。位(bit)来自英文 bit,音译为“比特”,表示二进制位。位是计算机内部数据储存的最小单位,11010100 是一个 8 位二进制数。一个二进制位只可以表示 0 和 1 两种状态。四个比特就代表有四个二进制位,可以用 XXXX 来表示。每一个 X 都有 0 或 1 两种可能。所以 16 个状态分别为:

0000、0001、0010、0011、

0100、0101、0110、0111、

1000、1001、1010、1011、

1100、1101、1110、1111。

五个比特的编码可以表示 32 种不同的状态。这个是 2 进制数的说法,5 个比特就是 5 位 2 进制数,5 位 2 进制数可以表示为 00000、00001、00010、00011、00100、00101、00110、00111……11111,换算成十进制就是 0、1、2、3、4、5、6、7……32 共计 32 种状态。比特(BIT,binary system),计算机专业术语,是信息量单位,是由英文 BIT 音译而来。同时也是二进制数字中的位,信息量的度量单位,为信息量的最小单位。

n 个二进制位可以表示 2ⁿ种编码状态,比如说最简单的 1 位二进制位,就是有两种编码状态,分别是 0 和 1。2 位二进制位的话就是四种,分别是 00,01,10,11 这四种。后面以此类推。其实对于 n 位二进制来说,每一位都是有 0 和 1 两种状态,所以 n 位,就是 2 *2*2*2…*2(n 个 2 相乘)种编码状态,即 2ⁿ种编码状态。

正文完