基础
文章平均质量分 74
aketoshknight
如果找不到人生的意义,活着就是为了死亡
展开
-
汇编学习笔记——宏
目录宏宏库宏定义:在程序中为一个代码段起名,而后的程序段中直接通过其名字将该代码断复制。格式:;定义宏名 macro [形参表] ;宏定义体endm;调用宏名 [实参表]示例1:在程序中使用宏PS:如上图所示,宏定义类似高级语言中的函数定义,使用的方式同样与之类似,可在宏定义体中书写任意指令示例2:宏定义与子程序辨析PS1:如上图所示,子程序的的使用和宏的使用实际上差别巨大。子程序的原理为书写一段指令之后将之存储与内存的某一区段,而后.原创 2021-05-18 16:47:43 · 2993 阅读 · 0 评论 -
汇编学习笔记——外部设备
目录外部设备CMOS RAM芯片外部设备定义:一系列通过主板与CPU连接的外部设备CMOS RAM芯片定义:包含一个实时钟和一个有128个存储单元的RAM存储器,其中存储内部实时钟、系统配置信息、用于开机时配置系统信息的相关程序等。示例1:CMOS RAM芯片概况PS1:如上图所示,CMOS RAM芯片由独立电池供电,即使关机后其内部时钟仍正常工作并且RAM中的信息不会丢失。PS2:该芯片内部有两个端口,地址分别为70h与71h,CPU可通过这两个端口..原创 2021-04-21 12:53:44 · 273 阅读 · 0 评论 -
汇编学习笔记——伪指令
伪指令定义:没有对应机器码的指令,最终不被CPU所执行,而是由编译器执行的指令。编译器根据伪指令来进行相关的编译工作。示例1:一段汇编程序中的伪指令示例PS:伪指令在debug中直接执行汇编代码是不需要的,但若要将汇编程序交由编译器执行,则是必要的。段定义定义:一个汇编程序是由多个段组成的,这些段被用来存放代码、数据或当作栈空间来使用。格式为:段名 segment表示段的开始;段名 ends表示段的结束。示例:完整的汇编程序PS1:一个有意义的汇编程序中至少要有...原创 2021-04-13 10:48:03 · 2326 阅读 · 0 评论 -
汇编学习笔记——设计与执行
指令执行定义:CPU读取CS:IP指向的地址的数据,并将之解析为汇编指令执行示例1:8086CPU中的指令执行框架PS1:如上图,指令存放在内存中,而CS:IP通过地址加法器组合成的地址指向内存中的一段存储着指令代码的地址段PS2:指令数据被从内存中提出,通过数据总线进入指令缓冲器,最后被执行。示例2:通过DOSBox实际演示指令执行PS1:如上图,当使用t指令时,2000:0000处的mov ax,0123被执行,将寄存器ax中的值改为0123,而后寄存器ip的值自动增加并原创 2021-04-12 10:48:52 · 478 阅读 · 0 评论 -
汇编学习笔记——寻址与存储
寻址物理地址定义:所有接入电脑的内存件都将被赋予一个独有的编号,这个编号作为CPU访问其时的‘地址’存在,编号由零开始一维延伸,因此所有内存单元构成的存储空间是一个一维的线性空间示例:8086CPU对应的内存PS:除了专用的内存条之外,计算机的显存、各类外接设备的存储器,所有RAM与ROM存储元件都会被统一编址。寻址能力定义:CPU最多能够处理的地址的大小称为其寻址能力。由其一次可处理的数据的位数和地址总线的传输能力共同决定示例:8086CPU是16位结构的CPU,其一.原创 2021-04-09 11:30:38 · 689 阅读 · 0 评论 -
汇编学习笔记——汇编指令
mov、add指令定义:mov A,B将B中的数据移入A;add A,B将A与B相加的结果存入A示例1:mov与add指令对应到高级编程语言中PS:汇编指令不区分大小写,即MOV等效与mov示例2:使用高低8位寄存器的情况下的指令执行结果PS:最后一条指令中,C5H与93H相加的结果为158,但因为al寄存器只能存储8位数据,因此最高位1因为数据溢出而被舍弃(因使用的是al寄存器进行独立运算,故该进位不会进入ah寄存器中)...原创 2021-04-09 10:12:51 · 5099 阅读 · 1 评论 -
汇编学习笔记——寄存器
寄存器定义:CPU内部用于信息存储的单元示例:8086CPU中有14个寄存器PS1:8086CPU中所有的寄存器都是16位(16b)的,可以存放两个字节(2B)PS2:寄存器的大小与CPU的操作位数与CPU对应的字长相同,对于8086CPU,其寄存器大小、操作位数与字长皆为16位通用寄存器定义:可用于传送和暂存数据,也可参与算术逻辑运算,并保存运算结果的寄存器示例:8086CPU中的AX寄存器PS:以上为在AX寄存器中存储4E20H(01001110001000.原创 2021-04-09 09:41:18 · 560 阅读 · 0 评论 -
学习笔记---文件读写
C语言文件读写熟悉的printf(),scanf(),getchar(),putchar()等语句,都是将数据输出到标准输出stdout(显示器),或从标准输入stdin(键盘)读取数据。并要依赖include 但当需求操作的数据量十分巨大时,标准的输入和输出就显得力不从心了。而通过从磁盘文件中读写数据,能够弥补这个缺陷。数据传输:解析:1.原创 2016-12-18 13:26:28 · 779 阅读 · 0 评论 -
学习笔记---多维数组及多级指针的使用
多维数组使用多维数组做函数参数原创 2017-01-22 23:28:21 · 1677 阅读 · 0 评论 -
习题笔记---蓝桥--170107
第一题:搭积木小明最近喜欢搭数字积木,一共有10块积木,每个积木上有一个数字,0~9。搭积木规则:每个积木放到其它两个积木的上面,并且一定比下面的两个积木数字小。最后搭成4层的金字塔形,必须用完所有的积木。下面是两种合格的搭法: 0 1 2 3 4 56 7 8 9 0 3 1 7原创 2017-01-22 20:39:45 · 3108 阅读 · 0 评论 -
学习笔记---字符串初步
字符串基础: 实质:以'\0'为结束标识的字符数组定义和初始化:char str[]={"I am happy"};或char str[]="I am happy"; 字符数组和字符串定义的差别 定义方法 内存中实质存储的元素 解析 char str1[]={'h','a','p','p','y'}; h a p p...原创 2017-01-17 00:07:37 · 324 阅读 · 0 评论 -
学习笔记---库函数
C语言中的库函数函数库:概述:函数库是由系统建立的具有一定功能的函数的集合详解:1.库中存放函数的名称和对应的目标代码,以及连接过程中所需的重定位信息。(目标代码以二进制保存,调用时可以直接运行,不需要额外编译。)2.用户也可以根据自己的需要建立自己的用户函数库库函数:概述:存放在函数库中的函数详解:1.库函数明确定义了功能、参数和返回值(函数三原创 2016-12-22 15:54:53 · 708 阅读 · 0 评论 -
学习笔记---C程序结构、C语言基础语句总结
C语言程序结构结构图:解析:源程序文件:如创建C程序时的main.c等等预处理命令:如C程序代码开头的include 等等全局变量声明:诸如:函数:如每个C程序都有的 int main(){},以及我们自定义的诸如 int gcd(){} 函数首部:定义函数的类型和传入参数(如int main())函数体:定义函数内部的功能({}这原创 2016-12-18 12:05:43 · 660 阅读 · 0 评论 -
学习笔记---C语言中的数据存储原理
位数的数据类型的取值的关系;数据溢出;单精度和双精度浮点型的精度差别;浮点型数据误差相关;原创 2016-11-23 20:20:06 · 974 阅读 · 0 评论 -
学习笔记---赋值运算符与逗号运算符
赋值运算符:赋值运算符优先级运算符功能结合方式14= += -= *= /= &= ^= |= >=各种赋值由右向左赋值表达式: 如:int a;a = 3;赋值运算符的作用是:使=如a=3;这条语句中:a是左值,=是赋值运算符,3是右值。这条语句的执行结果便是使a的值变为3。原创 2016-11-29 19:54:30 · 1675 阅读 · 0 评论 -
学习笔记---三种循环
while语句实现循环结构:while(表达式){ 语句;}或while(表达式) 语句;当while后小括号中表达式的值为真(大于零)时,循环执行while之下的语句(大括号中的内容或当没有大括号时,while下紧邻的一句)。代码示例:#include #include /*这个程序用来测试while循环语句*/int main()原创 2016-12-13 16:47:56 · 421 阅读 · 0 评论 -
学习笔记---C语言运算符规则及数据类型的自动/强制转化规则
数据类型的转换要点数学库函数原创 2016-11-22 19:42:54 · 903 阅读 · 0 评论 -
学习笔记---字符型数据
字符型数据字符常量:用单引号括起来的字符,如:'a' , '#' , '%' , 'D' 。原创 2016-11-30 20:22:54 · 1618 阅读 · 0 评论 -
学习笔记---C语言数据类型
C语言的基础数据类型的书写,阅读要点;基础数据类型的占用字节和取值范围;通过代码获取数据类型占用字节的方法;原创 2016-11-22 16:06:02 · 429 阅读 · 0 评论 -
学习笔记---自增(++)和自减(--)
自增自减运算符的理解要点原创 2016-11-23 18:25:48 · 501 阅读 · 0 评论 -
学习笔记---C语言中全局变量,变量,常量的定义与使用
变量与常量的基础使用原创 2016-11-23 17:35:05 · 8512 阅读 · 0 评论 -
学习笔记---条件运算符
条件运算符条件运算符: ?:条件表达式: 表达式1 ? 表达式2 : 表达式3运算法则: max=(a>b)?a:b;(使max得到a和b中的较大者)当表达式1的值为真时,整个表达式的值等于表达式2的值,当表达式1的值为假时,整个表达式的值等于表达式3的值 优先级 运算符 结合方式 13 ?: 由右向左 14 = 由右向左 15 , 由原创 2016-12-13 16:30:47 · 687 阅读 · 0 评论 -
学习笔记---关系运算符、条件表达式、逻辑运算
关系运算符:关系运算符运算符意义 小于 小于等于 >大于 >=大于等于 ==等于 !=不等于优先级:优先级优先级运算符结合方式6 = >由左到右7 == !=由左到原创 2016-12-07 17:42:26 · 1605 阅读 · 0 评论 -
学习笔记---if和switch的使用方法和要点
注:这两个语句的基础应用十分简单,所以这里不过多阐述if选择结构当满足条件时,执行一个语句块。当不满足条件时,执行另一个语句块。示例代码:#include #include /*这个程序用来测试简单的if语句。*/int main(){ int a,b,c; scanf("%d %d",&a,&b); if(a>b)原创 2016-12-08 06:43:45 · 1500 阅读 · 0 评论 -
学习笔记---初识指针
变量与变量指针:变量:当定义一个变量,系统即赋予其对应的内存空间。变量的数据类型将影响变量得到的内存的大小如:int 型变量的字节数为4,因此当定义一个int 型变量时。系统将随机的取4个连续的内存单元作为该变量的存储空间。比如 int i =100;float f=2.3; char c='k'; 内存中可能这样给这几个变量分配空间:这...原创 2016-11-27 19:30:36 · 394 阅读 · 0 评论 -
学习笔记---C语言中的输入与输出
C语言中的输入和输出:输入:主要使用scanf函数:功能:从标准输入(一般是键盘)获得数据。格式:scanf(格式描述串,变量地址);(如:int a; scanf("%d",&a);)需求引用的库:stdio.h (这也是为什么几乎所有C语言程序的开头总是一句"#include ")格式控制符:常见的格式控制符格式控制符作用举例原创 2016-11-27 20:02:35 · 808 阅读 · 0 评论