自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(35)
  • 收藏
  • 关注

原创 蓝桥杯b组c++赛道---字典树

字典树是一种树形结构,用于高效地存储和检索字符串数据集 中的键,也叫前缀树。它的每个节点代表一个字符,从根节点到某一节点的路径上的字符连接起来,就形成了一个字符串前缀。比如存储字符串 “apple”“app”“banana”,“app” 这部分路径是共享的。

2025-05-27 19:07:34 921

原创 蓝桥杯b组c++赛道---数位dp

蓝桥杯b组c++赛道---数位dp

2025-05-26 20:02:56 797

原创 微机原理与接口技术——实验

按要求编写以下程序:各种进制数显示程序。利用循环左移逐个获取二进制的最高位显示。

2024-11-24 15:20:44 807

原创 微机原理与接口技术——可编定时器,计数芯片8253.8254

8253 和 8254 是 Intel 公司生产的可编程定时器 / 计数器芯片,它们在微机系统中广泛应用于定时控制、计数操作以及脉冲信号产生等功能。8254 是 8253 的改进型号,其功能基本兼容 8253,但在性能上有所提升,例如具有更高的计数频率等。

2024-11-24 11:29:02 1337

原创 微机原理与接口技术——中断系统与可编中断控制芯片8259A

Intel 8259A 是可编程中断控制器,可用于管理 Intel 8080/8085、8086/8088、80286/80386 的可屏蔽中断。其主要功能包括:1.具有 8 级优先权控制,通过级联可扩展至 64 级。2.每一级均可通过编程实现屏蔽或开放。3.能向 CPU 提供相应的中断类型号。4.可通过编程选择不同的工作方式。

2024-11-08 20:50:57 1483 1

原创 微机原理与接口技术——常用接口技术

微机系统中,芯片接口技术是实现微处理器与外部设备有效通信的关键。它涉及到硬件电路设计和软件编程,以确保数据、地址和控制信号的正确传输。

2024-11-01 19:43:36 822

原创 微机原理与接口技术——存储器设计

计算机断电后,ROM 中的信息不会丢失,重新加电后,其中的信息保持不变,适宜存放计算机启动的引导程序、启动后的检测程序、系统最基本的输入输出程序、时钟控制程序以及计算机的系统配置和磁盘参数等重要信息。当存储芯片的存储容量不能满足系统需求时,可通过增加存储芯片的数量,将它们的地址线、数据线和控制线分别连接在一起,以扩展存储系统的容量。将所有的地址线都参与译码,每一个存储单元的地址都是唯一的,不存在地址重叠的情况,能够充分利用存储空间,但译码电路相对复杂。信息是通过电信号写入的,断电时其中的信息会消失。

2024-10-29 15:28:37 802

原创 微机原理与接口技术—— 总线形成(2)

系统中只有一个8086 微处理器,所有的总线控制信号都是直接由该CPU 产生。这种模式适用于规模较小的微机系统,系统中的总线控制逻辑电路被减到最小。用于实现多处理机系统,其中8086 CPU 被称为主处理器,其他处理器被称为协处理器。8086 CPU 不直接提供用于存储器或 I/O 读写的读写命令等控制信号,而是将当前要执行的传送操作类型编码为 3 个状态位输出,由总线控制器 8288 对状态信号进行译码产生相应控制信号。

2024-10-28 22:14:21 856

原创 微机原理与接口技术—— 总线形成

总线是计算机系统中模块(或子系统)之间传输数据、地址和控制信号的公共通道,是一组公用导线,是计算机系统的重要组成部分。它就像一个信息传输的桥梁,连接着计算机系统中的各个部件,使得不同部件之间能够相互通信和协同工作。

2024-10-24 21:15:17 1135

原创 微机原理与接口技术—— 8086 CPU 指令系统总结(3)

在中断处理程序执行完毕后,使用 IRET 指令可以恢复被中断程序的执行现场,包括恢复标志寄存器、CS 和 IP 寄存器的值,使 CPU 继续从被中断的地方执行程序。例如,在中断处理程序的末尾执行IRET指令,CPU 会将栈中的返回地址弹出到 IP 和 CS 寄存器中,并恢复标志寄存器的状态,然后返回到被中断的程序继续执行。中断是指计算机在执行程序的过程中,当出现某种特殊情况(如外部设备请求、故障、定时器溢出等)时,暂停当前正在执行的程序,转而去执行特定的中断处理程序,处理完后再返回到被中断的程序继续执行。

2024-10-22 16:51:13 1365

原创 微机原理与接口技术—— 8086 CPU 指令系统总结(2)

(2)JNC/JNB/JAE(Jump if Not Carry/Not Below/Above or Equal)指令:当 CF 标志位为 0 时(即无进位或结果大于等于),转移到目标地址。(2).JNE/JNZ(Jump if Not Equal/Not Zero)指令:当 ZF 标志位为 0 时(即结果不为 0 或两个操作数不相等),转移到目标地址。(1).JE/JZ(Jump if Equal/Zero)指令:当 ZF 标志位为 1 时(即结果为 0 或两个操作数相等),转移到目标地址。

2024-10-20 08:59:16 1143

原创 微机原理与接口技术—— 8086 CPU 指令系统总结(1)

8086 CPU 的指令系统是其进行数据处理和控制操作的基础,包含了丰富多样的指令,这些指令按照功能可分为数据传送指令算术运算指令逻辑运算指令串操作指令控制转移指令等。指令由操作码和操作数组成,操作码指明要执行的操作类型,操作数则提供操作的对象或数据来源。指令的寻址方式多样,使得 CPU 能够灵活地访问内存和寄存器中的数据。

2024-10-16 15:34:31 1529

原创 微机原理—— 8086 CPU 全面总结

8086 是 16 位微处理器,在微机发展史上具有重要地位。它的出现推动了个人计算机的广泛应用和发展。

2024-10-14 19:38:32 4508

原创 微机原理与接口技术--数制与码制

但对于 8 位有符号数来说,因为最高位是符号位,真正能用于表示数值大小的只有 7 位,而这个结果超出了 7 位所能表示的范围,就产生了溢出错误。例如,将十进制数 10 转换为二进制数,用除 2 取余法,10 除以 2 商 5 余 0,5 除以 2 商 2 余 1,2 除以 2 商 1 余 0,1 除以 2 商 0 余 1,从下往上取余数得到二进制数 1010。因为第 1 位和第 3 位都是 1,所以这两位的结果为 1,其他位至少有一个 0,所以结果为 0。对于负数,反码是除符号位以外,其余数取反。

2024-10-13 09:07:19 978

原创 微机原理与接口技术--绪论

RAM 用于临时存储程序和数据,计算机运行时,程序和数据都在 RAM 中进行读写操作。ROM 则用于存储固化的程序和数据,如计算机的开机自检程序等,其内容在断电后不会丢失。CPU 的功能包括算术运算(如加、减、乘、除)和逻辑运算(如与、或、非、异或等),其中运算主要通过算术逻辑单元(ALU)进行,而控制器负责控制 ALU 及其他部件协同工作,对数据进行处理。在存储器寻址时,有多种寻址方式,如直接寻址、寄存器间接寻址、寄存器相对寻址、基址变址寻址、基址变址且相对寻址等,用于确定操作数在存储器中的位置。

2024-10-11 15:09:08 942

原创 数据结构——排序(归并排序)

归并排序(Merge Sort)是一种基于分治策略的高效排序算法。它的核心思想是将一个数组分成两个或多个子数组,对每个子数组进行排序,然后将排序好的子数组合并成一个最终的有序数组。1.1.对于一个给定的数组,归并排序会不断地将其分成更小的子数组。通常是将数组从中间位置分成两个子数组,这个过程是递归进行的。例如,对于数组[4, 7, 2, 6, 3, 8],首先会被分为[4, 7, 2]和[6, 3, 8]两个子数组。

2024-10-10 22:55:43 1639 2

原创 数据结构——排序(交换排序)

交换排序是一类排序算法,它的核心思想是通过交换元素的位置来达到排序的目的。在排序过程中,比较数组中的元素对,如果它们的顺序不符合排序要求,就交换它们的位置。在这里主要讲冒泡排序和快速排序。

2024-10-09 23:06:01 1807

原创 数据结构——排序(选择排序)

选择排序(Selection Sort)是一种简单的排序算法,其核心思想是通过不断地从待排序的数据集合中选择出特定元素(最小或最大元素),并将其放置在已排序序列的合适位置,逐步构建出一个有序序列。在这里主要讲直接选择排序和堆排序。

2024-10-09 22:46:44 1227

原创 数据结构——排序(插入排序)

希尔排序是对直接插入排序的改进,也称为缩小增量排序。它通过将数据分成若干个较小的子序列,对每个子序列进行插入排序,然后逐步减少子序列的数量和间隔,最终对整个序列进行一次直接插入排序,使得整个序列基本有序,从而提高排序效率。插入排序是一种简单且直观的排序算法,在实际应用和算法学习中都具有重要地位。它主要分为直接插入排序和希尔排序两种形式,每种都有其独特的特点和应用场景。

2024-10-08 22:39:57 3169

原创 数据结构--树和二叉树

这段代码是用 C 语言定义了一个二叉树的数据结构。一、结构定义:这里定义了一个别名 BTDataType ,代表二叉树节点存储的数据类型为字符型。2. typedef struct BinaryTreeNode :定义了一个结构体类型 BinaryTreeNode ,这个结构体代表二叉树的节点。:指向左子树的指针。:指向右子树的指针。:存储节点的数据,这里是字符型数据。通过这个定义,可以方便地创建二叉树的节点,并构建二叉树的数据结构,用于存储和操作二叉树中的数据。

2024-09-22 08:32:14 967

原创 数据结构——队列

/取数据个数assert(pq);++size;7. 检测队列是否为空,如果为空返回非零结果,如果非空返回0- 直接通过检查队列的队头指针( pq->head )是否为 NULL 来判断队列是否为空。如果队头指针为 NULL ,则表示队列为空,函数返回 true;否则返回 false。//判断队列是否为空assert(pq);8. 销毁队列-首先,将 cur 指针初始化为队列的头节点( pq - > head )。然后,通过一个 while 循环遍历队列中的每个节点。

2024-09-11 16:49:33 1486 2

原创 数据结构--栈

3. 返回栈顶元素,通过 ps->a[ps->top - 1] 获取,因为 top 指向栈顶元素的下一个位置,所以需要减一来得到栈顶元素的索引。否则返回 false。3. 将元素 x 存入栈顶位置,即 ps->a[ps->top] ,然后将栈顶指针 top 加一,表示栈中元素数量增加了一个。2. 直接返回栈顶指针 top 的值,因为 top 指向栈顶元素的下一个位置,所以其值就代表了栈中数据的个数。4. 将栈顶指针 top 初始化为 0 ,表示此时栈为空, top 指向栈顶元素的下一个位置。

2024-09-09 09:27:45 836

原创 数据结构--带头双向循环链表

带头双向循环链表

2024-09-01 10:35:39 683

原创 数据结构——单链表

建立一个当前节点,遍历节点查找数,如果找到了返回节点,并使当前节点的下一个节点为当前节点,相当于删除了该节点,没找到返回空指针。向内存申请空间,建立新节点,新节点为空,扩容失败退出,否则返回一个新指针。因为用的很多单独写一个函数。2、pos不是第一个节点。1、pos是第一个节点。2、链表只有一个节点。

2024-03-07 12:57:52 520 1

原创 数据结构——顺序表

新的开始,数据结构,一起来学!!!

2024-03-05 17:24:25 630

原创 C语言第八讲——结构体

空类型void(没有数据)数据类型枚举类型 enum空类型 void派生类型定义结构体变量有三种方式(1).先声明结构体类型,再定义该类型的变量struct 结构体类型名类型标识符成员名;类型标识符成员名;struct 结构体类型名 变量名表列;(2).在定义结构体类型的同时定义结构体变量一般形式struct 结构体类型名类型标识符成员名;类型标识符成员名;}变量名表列;(3).不指定类型名而直接定义结构体类型变量一般形式。

2024-03-02 15:01:42 968

原创 C语言第七讲——指针

计算机的存储设备可以存储二进制信息,系统将每八个二进制位编为一个基本存储单元,称为字节(Byte)。如果在程序中定义了一个变量在对程序进行编译时,编译器就会给这个变量分配内存单元。内存区的每一个字节有一个编号,这就是”地址。编译系统根据程序中定义的变量类型,分配一定长度的空间:注意:程序运行时,计算机操作系统会给程序分配一整块连续的内存空间,而编译器使用的“地址”是这一块内存空间中的“相对地址一般形式:[存储类别] 数据类型*指针变量名;例 *p1,*p2;在定义指针变量时要注意。

2024-02-27 18:37:32 1074

原创 C语言第六讲——数组

一维数组:只有一个下标的数组。定义格式:类型标识符 数组名标识符[常量表达式];说明:(1)类型标识符:数组元素的数据类型。int、long、char、float、 double等。(2)数组名标识符:与变量的命名规则相同。(3)常量表达式:即数组长度(数组包含元素的个数),只能是一个整型常量表达式,可以是符号常量。若一个一维数组,它的每一个元素亦是类型相同的一维数组时,便构成二维数组。数组的类型相同:是指数组大小、元素类型相同。

2024-02-26 22:16:17 1042 1

原创 C语言第五讲(循环结构)

C语言循环结构一、为什么需要循环控制二、用while语句和do-while语句实现循环三、用for语句实现循环(计数循环-当型循环)四、循环的嵌套五、改变循环执行的状态-break和continue语句六、几种循环的比较七、循环程序举例

2024-01-23 18:05:41 1663 1

原创 C语言第四讲(选择结构)

一、选择结构和条件判断二、关系运算符和关系表达式三、逻辑运算符和逻辑表达式四、用if语句实现选择结构五、条件运算符和条件表达式六、用switch语句实现多分支选择结构七、选择结构程序综合举例

2024-01-21 19:43:38 1131

原创 C语言第三讲(顺序结构)

顺序结构,走过路过不要错过,亲~耽误一分钟,收获一整天,点进去浏览浏览,支持支持!!!

2024-01-20 12:51:43 1587

原创 C语言第二讲

C语言字符集C语言标识符C语言关键字C语言的基本数据类型C语言中常量和变量的概念C语言中常量与变量的使用C语言中运算符与表达式

2024-01-19 13:49:25 1852 1

原创 C语言第一讲

断点的作用:可以在程序的任意位置设置断点。这样就可以使得程序在想要的位置随意停止执行,继而一步一步执行下去。(3)由“/*”与“*/”之间的内容构成C语言程序的注释部分(注意这样注释不可以嵌套);(5)在C语言中区分大小写,如Main、MAIN、main、maiN是不相同的。4.F11(逐语句),就是每次只执行一条语句,也可以使我们的执行逻辑进入函数内部。3.F10(逐过程),一个过程可以是一个函数调用,也可以是一条语句。(2)语句是程序编译单位,必须以分号(;“//”也是C语言的注释部分,行注释。

2024-01-18 12:41:08 603 1

原创 c语言学习准备工作

c语言学习准备工作

2024-01-17 21:03:21 487

原创 初试博客:一起学习,入股不亏

初试博客,简短介绍一下自己,我是一个被计算机科技的神奇魅力所吸引,选择计算机专业,渴望更深入地了解这一领域,期待在未来的日子里,为科技进步尽一份绵薄之力的人,希望在未来的日子里大家一起在csdn学习,共同进步成长。

2024-01-16 22:13:50 514 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除