计算机指令

短信相关的AT指令以及信令

☆樱花仙子☆ 提交于 2019-12-06 02:54:38
本文链接:https://blog.csdn.net/sjz4860402/article/details/78552756 此次的短信AT指令和信令从以下几个方面介绍: 一 . 短信AT指令的格式 二 . 短信AT指令的使用(超级终端) 三 . 短信AT指令在log中的查看 四 . 短信modem相关信令 五 . 超级终端的使用(hyper_terminal) 六 . 其他短信AT指令 七 . CMC ERROR 错误码 一 . 短信AT指令的格式 短信的编码方式有两种:text模式,pdu模式。因此短信的AT指令执行格式也有两种,分别对应text模式和pdu模式。 1 . Text模式 纯文本模式,支持不同的字符集,从技术上说也可用于发送中文短消息,但国内手机基本上不支持,主要用于欧美地区。 2 . Pdu模式 这个是手机默认的编码方式,可以使用任何字符集,其包括三种编码方式:7bit编码,8bit编码,UCS2编码。 7bit编码:ASCⅡ码就是7bit编码。 8bit编码:ASCⅡ字符可以使用7位二进制表示,但是由于计算机的基本处理单位是字节(1byte=8bit),所以一般在高位补0,用一个字节表示一个ASCⅡ字符。这就是8bit编码。 UCS2编码:处理Unicode字符,使用2个字节来表示一个字符,可以表示世界上所有的字符。发送中文就是使用此编码方式。 二 .

SAIL-IMX6Q开发板上常用的指令

大城市里の小女人 提交于 2019-12-06 02:07:23
SAIL-IMX6Q开发板上常用的指令 1.简介 本文是实现在电鱼SAIL-IMX6Q开发板中对于Linux命令显示开发板状态信息的指令的测试与使用。 2.准备 软件:板上linux系统和PC上的超级终端 硬件:电鱼SAIL-IMX6Q开发板和PC SAIL-IMX6Q开发板利用232串口连接电脑,并连接上电源。 3.内存 确定你的计算机拥有多少显卡内存需要下面的命令。首先使用 lspci 列出所有设备信息然后过滤出你想要的显卡设备信息: (开发板没有显卡所以不显示) ~# lspci | grep -i vga 现在再加上视频设备号重新运行 lspci 命令: (开发板没有显卡所以不显示) ~# lspci -v -s 00:02.0 最后使用下面的命令展示当前内存使用量(兆字节): top 命令为你提供内存使用更加详细的信息。它显示了当前全部内存和 CPU 使用情况并按照进程 ID、用户 ID 及正在运行的命令细分。同时这条命令也是全屏输出: ~# top “ctrl+c”退出 4.磁盘文件系统和设备 使用以下命令获取有关扇区数量、大小、文件系统ID和类型以及分区开始和结束扇区: ~# fdisk -l 要启动 Linux,你需要确定GRUB引导程序的可挂载分区。你可以使用 blkid 命令找到此信息。它列出了每个分区的唯一标识符(UUID)及其文件系统类型(例如 ext3 或

Java内存模型原理

妖精的绣舞 提交于 2019-12-06 00:51:39
这篇文章主要介绍模型产生的问题背景,解决的问题,处理思路,相关实现规则,环环相扣,希望读者看完这篇文章后能对 Java 内存模型体系产生一个相对清晰的理解,知其然知其所以然。 内存模型产生背景 在介绍 Java 内存模型之前,我们先了解一下物理计算机中的并发问题,理解这些问题可以搞清楚内存模型产生的背景。 物理机遇到的并发问题与虚拟机中的情况有不少相似之处,物理机的解决方案对虚拟机的实现有相当的参考意义。 物理机的并发问题 硬件的效率问题 计算机处理器处理绝大多数运行任务都不可能只靠处理器“计算”就能完成,处理器至少需要与内存交互,如读取运算数据、存储运算结果,这个 I/O 操作很难消除(无法仅靠寄存器完成所有运算任务)。 由于计算机的存储设备与处理器的运算速度有几个数量级的差距,为了避免处理器等待缓慢的内存完成读写操作,现代计算机系统通过加入一层读写速度尽可能接近处理器运算速度的高速缓存。 缓存作为内存和处理器之间的缓冲: 将运算需要使用到的数据复制到缓存中,让运算能快速运行,当运算结束后再从缓存同步回内存之中。 缓存一致性问题 基于高速缓存的存储系统交互很好的解决了处理器与内存速度的矛盾,但是也为计算机系统带来更高的复杂度,因为引入了一个新问题:缓存一致性。 在多处理器的系统中(或者单处理器多核的系统),每个处理器(每个核)都有自己的高速缓存,而它们有共享同一主内存(Main

《程序员的自我修养》读书笔记 第二章 编译和链接

戏子无情 提交于 2019-12-05 20:51:15
2.1 被隐藏了的过程 在平常的应用程序开发中一般都不需要关注编译和链接过程,因为在IDE开发环境中一般都将编译和链接合到一起一步完成,直接生成可执行文件;通常将这个过程称为 构建(Buil) 。 对于最经典的C语言版"Hello World"的代码: #include <stdio.h> int main() { printf("Hello World\n"); return 0; } 我们在Linux下使用GCC来编译该代码时,只需使用几行简单的命令就完成对上述代码的编译等一系列过程(假设源码文件名为hello.c),生成可直接运行的的程序: $gcc hello.c $./a.oout Hello World 事实上,上述过程可分解为4个步骤,分别是 预处理(preprocess) 、 编译(compilation) 、 汇编(assembly) 和 链接(linking) ,其中前三个阶段都是文本形式的处理,如下图所示: 下面分别大致介绍下各个步骤的作用。 预编译 预编译过程主要处理那些源代码文件中以“#”开始的预编译指令。比如“#include”、“#define”等,常见的处理规则如下: 将所有的“#define”删除,并且展开所有的宏定义。 处理所有条件预编译指令,比如“#if”、“#ifdef”、“#endif”等。 处理“#include”预编译指令

计算机组成复习——概论

孤街浪徒 提交于 2019-12-05 19:51:24
Computer Organization 【 introduction 】 【 case1 】 就计算组成而言,在当下的计算机体系中通常采用的是冯诺伊曼体系的计算机——也就是标准的五大组成部分 : 控制器,存储器,运算器, Io( 输入设备和输出设备 ), 在当下的计算机往往都是采用的这种模式进行设计,当然还有其他的计算机体系结构,例如哈佛体系,这种体系下的计算机的指令存储器控制存储器是分开进行装置的,不像是冯诺伊曼体系中的那样,存储器是一个固定的封装好的元件,设想一下,假如你有一台采用了哈佛体系的计算机,其中的数据存储器和指令存储器是分开进行的,那么假设你要进行这样一个操作: 1+1= ? 1. 从输入设备键入 1 ,这个时候计算机接收来自键盘的外部中断(保护现场,中断响应,中断服务程序,返回断点),保存当前的执行状态,然后 cpu 响应当前中断,读入 1 到存储器中类似的键入 1+1 。 2. 当键入 “ = ”的时候相当对计算机下达了一条指令(有操作码),指令的组成在后面进行复习,但是指令是存储在指令存储器之中的,要对数据存储器的数据进行操作,并且返回到数据存储器的存储单元当中,要让 cpu 的 ALU 进行“ + ”的运算,这就需要总线将(指令) -----CPU-----( 数据存储器 ) 进行连接起来,自然而然回顾总线的概念 【 DEF 】总线

程序员需要了解的硬核知识之汇编语言(一)

会有一股神秘感。 提交于 2019-12-05 19:27:07
之前的系列文章从 CPU 和内存方面简单介绍了一下汇编语言,但是还没有系统的了解一下汇编语言,汇编语言作为第二代计算机语言,会用一些容易理解和记忆的字母,单词来代替一个特定的指令,作为高级编程语言的基础,有必要系统的了解一下汇编语言,那么本篇文章希望大家跟我一起来了解一下汇编语言。 汇编语言和本地代码 我们在之前的文章中探讨过,计算机 CPU 只能运行本地代码(机器语言)程序,用 C 语言等高级语言编写的代码,需要经过编译器编译后,转换为本地代码才能够被 CPU 解释执行。 但是本地代码的可读性非常差,所以需要使用一种能够直接读懂的语言来替换本地代码,那就是在各本地代码中,附带上表示其功能的英文缩写,比如在加法运算的本地代码加上 add(addition) 的缩写、在比较运算符的本地代码中加上 cmp(compare) 的缩写等,这些通过缩写来表示具体本地代码指令的标志称为 助记符 ,使用助记符的语言称为 汇编语言 。这样,通过阅读汇编语言,也能够了解本地代码的含义了。 不过,即使是使用汇编语言编写的源代码,最终也必须要转换为本地代码才能够运行,负责做这项工作的程序称为 编译器 ,转换的这个过程称为 汇编 。在将源代码转换为本地代码这个功能方面,汇编器和编译器是同样的。 用汇编语言编写的源代码和本地代码是一一对应的。因而,本地代码也可以反过来转换成汇编语言编写的代码

9.CPU的控制器和运算器

夙愿已清 提交于 2019-12-05 19:27:06
转:https://www.cnblogs.com/sum-41/p/11583567.html 控制器 控制器是CPU的组成部分,用于协调和控制计算机的运行,它的构成如下图所示: 下面逐一简单介绍。 程序计数器 (Program Counter) 简称PC,用来存储从内存提取的下一条指令的地址。当CPU执行一条指令时,首先需要根据PC中存放的指令地址,将指令由内存取到指令寄存器中,此过程称为“取指令”。与此同时,PC中的地址或自动加1或由转移指针给出下一条指令的地址,此后经过分析指令,执行指令,完成第一条指令的执行,而后根据PC取出第二条指令的地址,如此循环,执行每一条指令,保证程序能够连续地执行下去。 时序发生器 用于发送时序脉冲,CPU依据不同的时序脉冲有节奏地进行工作,类似于CPU的节拍器。 指令编译器 用于翻译指令及控制传输指令包含的数据。 指令寄存器 用于缓存从内存或高速缓存里取出的指令,CPU执行指令时,就可以从指令寄存器中取出相关指令来进行执行。 主存地址寄存器 保存当前CPU正要访问的内存单元的地址,通过总线跟主存通信。 主存数据寄存器 保存当前CPU正要读或写的主存数据,通过总线与主存通信。 通用寄存器 用于暂时存放或传送数据或指令。 运算器 运算器是用来进行数据运算加工的。 数据缓冲器 分为输入缓冲和输出缓冲,输入缓冲暂时存放外设送过来的数据

单片机期末复习

心不动则不痛 提交于 2019-12-05 18:17:55
一、硬件结构 1.1部分引脚说明 RST:复位引脚,两个机器周期的高电平后复位 ALE:锁存低八位地址 EA:高电平时,访问内部程序存储器(ROM) P0:双向IO口、分时复用-低八位地址,数据总线 P1:双向IO口 P2:双向IO口,访问外部存储器时,提供高八位地址总线 P3:双向IO口,有第二功能 1.2存储器 物理上分为:4 个空间 即片内ROM、 、 片外ROM(程序存储器) 片内RAM、 、 片外RAM(数据存储器) 逻辑上分为: : 3 个空间 , 程序内存(ROM) ( 片内 、 外 ) 统一编址 MOVC 数据存储器 ( 片内) ) MOV 数据存储器(片外) MOVX 1.2.1程序存储器(ROM 作用:存储用户程序和表格常数 特殊单元: 0000H:复位后从这里开始执行程序 中断单元: 外中断0 (INT0 ) 0003H 定时器0 (T0 ) 000BH 外中断1 (INT1 ) 0013H 定时器1 (T1 ) 001BH 串行口(UART ) 0023H 1.2.2内部数据存储器(RAM 通用工作寄存器组 00~1FH共32个,四组通用寄存器,即(四组R0~R7) 可以使用RS1(PSW.4)RS0(PSW.3)来切换寄存器区 RS1 RS0 寄存器区 内存地址 00 0区 00-07H 01 1区 08-0FH 10 2区 10-17H 11 3区 18

telnet指令研究—以网络聊天程序为例

与世无争的帅哥 提交于 2019-12-05 17:50:32
一、telnet指令   Telnet取名自Telecommunications和Networks的联合缩写,是早期个人计算机上连接到服务器主机的一个网络指令,由于存在安全问题,现在已经很少被使用。在windows操作系统中仍然存在这个指令,但是默认被系统禁用,可以通过以下步骤来打开: 控制面板 》 程序和功能 》 启用或关闭Windows功能 》 勾选“Telnet Client”复选框 》 确定   在Windos Powershell中输入telnet是否已经启用: ~/userName > telnet ~/userName > 欢迎使用 Microsoft Telnet Client ! Escape 字符为 'CTRL+]' Mirosoft Telnet >   使用 ?/help 查看可用操作: Microsoft Telnet > ?/help 命令可能是缩写。支持的命令为: c - close 关闭当前连接 d - display 显示操作参数 o - open hostname [port] 连接到主机(默认端口 23)。 q - quit 退出 telnet set - set 设置选项(键入 'set ?' 获得列表) sen - send 将字符串发送到服务器 st - status 打印状态信息 u - unset 解除设置选项(键入 'set ?'

《现代操作系统(中文第四版)》笔记 第一章 引论

我只是一个虾纸丫 提交于 2019-12-05 12:45:24
既然买了《现代操作系统》(《Modern Operating System》)这本书,那就好好学习一下吧,这是第一篇读书笔记。 ##第一章 引论 计算机系统总的来说分为软件和硬件,如下图所示。多数计算机有两种运行模式: 内核态和用户态 。 软件中最基础的部分是操作系统 , 它运行在内核态。操作系统具有对所有硬件的完全访问权限,可以执行机器能够运行的任何指令。 其他软件运行在用户态,只能使用部分机器指令。特别指出,哪些会影响极其的控制或可进行I/O操作的指令,在用户态中的程序是禁止的。 无法直接运行指令,则只能通过操作系统提供的接口来达到目的。 操作系统由硬件进行保护,防止用户试图对其进行修改。 大家都操作过Windows、Linux等操作系统,感觉这是不是就是操作系统? 这些与用户交互的程序,实际上并不是操作系统的一部分,经它们使用操作系统来完成工作,基于图标的称为图形用户界面(GUI, Graphical User Interface),我们所用的Windows就是这种,可以看到各种图标; 基于文本的则通常称为shell, 比如我们在Windows中使用cmd命令, 或者在Ubuntu中是Xshell等软件程序。 不过,在嵌入式系统(没有内核态)或解释系统(如基于Java的操作系统,它采用解释方式,而非硬件方式区分组件), 上述划分的边界是比较模糊的。 1.1 什么是操作系统