自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 汇编:单总线温度采集与显示

将立即数 0CCH 移动到 R0 寄存器,然后调用 SEND_BYTE 子程序,该子程序的功能是向一个设备发送一个字节的数据。将立即数 0BEH 移动到 R0 寄存器,然后调用 SEND_BYTE 子程序,该子程序的功能是向一个设备发送一个字节的数据。调用 TRANS12 子程序,该子程序的功能是将 WDLSB 和 WDMSB 合并成一个 16 位的数据,并进行一些处理。调用 READ_BYTE 子程序,该子程序的功能是从一个设备读取一个字节的数据,并将其保存到 A 寄存器中。

2025-05-23 07:30:00 635

原创 汇编:矩阵按键

MAIN标签下的代码是主要的程序执行流程,它调用键盘扫描子程序KEY2,然后通过MOVC A,@A+DPTR指令读取数据表TABLE中的数据来显示对应的数码。NEXT标签之后的代码用于更新R4的值,并且根据A的第0位决定是否对A进行右旋转操作,以此来控制数码管的显示。L6, L1, L2, L3等标签用于根据P1端口的某些位的状态来设置累加器A的值。接着在K3中,将R2的值送到端口P1,用于控制数码管的某些段。MOV P0,A将累加器A的值送到端口P0,可能用于显示。(3)主程序模块(MAIN)

2025-05-21 09:00:00 433

原创 汇编:电子计数器

如果K1未被按下,检查K2按键是否被按下,如果按下则执行减1操作并跳转到DISPLAY部分进行数码管显示。首先,根据R1的值计算百位、十位和个位,并通过移位操作将各位数值依次送入P0口以控制数码管的显示。检查K1按键是否被按下,如果按下则执行加1操作并跳转到DISPLAY部分进行数码管显示。如果K1和K2都未被按下,则继续检查K1是否长按,如果长按则连续执行加1操作。每次显示完一位数字后,调用DELAY延时函数以确保数码管有足够的响应时间。最后,跳转回MAIN继续循环执行按键检测和数码管显示。

2025-05-19 18:33:42 299 1

原创 汇编:跑马灯

循环中的 RRC A 和 JNC OFF 部分用于实现LED灯的右移效果,当最低位被移出时,跳过熄灭当前最高位灯的步骤。延时函数 DELAY 使用多层嵌套循环来实现较长的延时,其中循环次数通过 R5、R6 和 R7 寄存器进行控制。使用 SETB C 设置进位标志位C,用于判断是否需要熄灭当前最高位灯。主要负责初始化和控制循环,通过移位和循环控制LED灯的流水灯效果。用于控制延时,通过嵌套的三个循环实现较长的延时效果。

2025-05-19 08:00:00 247

原创 汇编:冒泡排序算法的实现

3.关于上一个实验程序,不知道是因为代码错误还是思路错误的原因,出现死循环,于是我在程序中添加了一行代码。2.在实验最开始思考如何进行两个数据大小的比较,发现汇编指令里有的指令无法再K4里执行,最后采用减法来判断两个数据的大小。1.在本次冒泡排序的实验中,参考了C语言的代码思路,采用内外循环的方法来实现内外循环。内层循环(Inner_STOB):通过R5计数,控制每轮排序的比较次数。内层循环(Inner_BTOS):通过R5计数,控制每轮排序的比较次数。继续内层循环直至完成当前轮次的比较。

2025-05-16 08:00:00 474

原创 汇编:循环程序设计

先初始化一些寄存器和数据存储位置,然后调用两个子程序Procedure1和Procedure2,分别从SRC复制数据到DEST,一个从开头到末尾,另一个从末尾到开头。Procedure2 负责2.从SRC中,向起始地址为DEST的片外存储中,逆序拷贝之前存储的NUM个单字节数,并以$字符结尾。同样使用循环,CJNE 指令检查 R0 是否等于 NUM,如果等于,就跳到 ENGING2,否则继续执行。使用循环,CJNE 指令检查 R0 是否等于 NUM,如果等于,就跳到 ENGING1,否则继续执行。

2025-05-14 08:00:00 485

原创 汇编:子程序设计

1.在编写除法运算的时候,第一次编写的时候出现了死循环,最后我的解决方式是通过计算的位数限定了循环的结果,死循环的问题就解决了。2.在计算乘法运算的时候,前几次结果出现了错误,最后的解决方式是将低位的进位和中位的低位进行相加,结果最后显示正确。初始化模块:在START标签中,将被除数的高位、低位和除数的寄存器初始化,以及商的高位、低位和余数的寄存器初始化。商的计算模块:在RESULT标签中,通过右环移操作更新被除数的高位和低位,同时商的高位增加1。

2025-05-12 16:51:08 710

原创 汇编:算术运算程序设计

1.本次实验中最大的困难是给出的两个高位数难以直接进行加减,这就需要如何考虑拆分这两个数进行加减,最终发现老师在课堂派中给出的模板里使用DW,DB,很好拆分了这两个数字。每个模块先加载对应位置的数据到 A 寄存器,然后进行相减操作,考虑借位或进位。每个模块先加载对应位置的数据到 A 寄存器,然后进行相减操作,考虑借位或进位。2.本次实验主要学会了如何进两个高位数的相加减与代码的调试。代码分为三个模块,分别处理低位、中位和高位的减法。代码分为三个模块,分别处理低位、中位和高位的。

2025-05-09 17:31:09 293

原创 钱币兑换问题

本实验旨在通过蛮力法实现一个算法,用于计算给定金额n(1 ≤ n ≤ 100),能够兑换成1分、2分和5分硬币的所有可能组合,并输出每种组合以及总共有多少种不同的兑换方式。第1列i代表当前行数(行数从001开始,固定3个字符宽度,宽度不足3的用0填充),后面3列a, b, c分别代表1角、2角、5角硬币的个数(每个数字固定12个字符宽度,宽度不足的在左边填充空格)。本题要求计算将给定金额n(1 ≤ n ≤ 100)分兑换成1分、2分和5分硬币的所有可能组合,并列出每种兑换方式。

2025-05-07 18:25:09 256

原创 矩阵连乘问题

首先,在问题特性上:矩阵乘法的结合律为问题提供了多种计算顺序,而不同顺序的计算效率可能相差极大。其次,更深刻理解了关于动态规划的优势,一是通过将大问题分解为子问题,避免了重复计算;外层循环遍历链长L(O(n)),中层循环遍历起点i(O(n)),内层循环遍历分割点k(O(n))。2. for i = 0 to n-1 // 初始化单个矩阵乘法次数。1. 初始化 m[n][n] 为 0 // 动态规划数组。4. 返回 m[0][n-1] // 返回最小乘法次数。输入:维数数组p[0..n],矩阵个数n。

2025-05-05 19:47:23 354

原创 小易喜欢的数列

例如,n=4,k=7,那么{1,7,7,2},它的长度是4,所有数字也在1到7的范围内,并且满足性质(3),所以小易是喜欢这个数列的。但是小易不喜欢{4,4,4,2}这个数列。这个问题要求计算满足特定条件的数列数量,其中数列长度为n,每个元素都在1到k之间。输出一个整数,即满足要求的数列个数,因为答案可能很大,输出对1 000 000 007取模的结果。输入包括两个整数n和k(1<=n<=10,1<=k<=10000)。(2)数列中的每个数都在1到k之间(包括1和k)。(1)数列的长度为n。

2025-05-03 18:19:40 269

原创 汽车加油问题

2.1.4.1 current_fuel ← current_fuel - distance // 减去行驶消耗的油量。2. 采用贪心策略解决问题,每次当汽车剩余油量不足以行驶到下一个加油站时,选择在当前加油站加油,并且更新剩余油量和加油次数。在中间部分,需遍历 n+1 段距离(共 n+2 个加油站),每段距离的处理时间为常数时间,故时间复杂度为 O(n)。第一行有 2 个正整数n和 k(k<=1000 ),表示汽车加满油后可行驶n公里,且旅途中有 k个加油站。一辆汽车加满油后可行驶 n公里。

2025-05-01 15:11:57 846

原创 图像增强技术

均衡化后,它将图像的灰度值分布拉伸到更广泛的范围,这样图像中暗的部分不会那么黑,亮的部分也不会那么刺眼,细节会更容易看到。cv::equalizeHist(input, output):OpenCV 内置的函数,输入灰度图像 input,输出增强后的图像 output,增强图像的对比度。均衡化后的图像 J:经过均衡化后,图像的整体对比度增强了,细节变得更加清晰。处理后的图像 J 的直方图均匀地分布在所有可能的灰度值上,这表示每个灰度级别的像素数更接近,从而提高了图像的整体对比度。

2025-04-29 22:05:13 640

原创 图像处理基础与图像变换

mask中非0系数的数量直接影响了图像压缩后的质量,在非0系数大于10时,压缩后的图像和原始图像差别肉眼观察不出,在只有3个非0系数时,图像失真严重,细节损失最多,可见在非0系数较少(小于10)时,非0系数的个数直接影响了压缩后图像的质量。对比度的变化:如果白色矩形非常大,接近整个图像的大小,那么频谱图中的对比度会降低,因为大部分能量都集中在低频部分,导致图像看起来较为平滑。非0系数越少,压缩前后图像的差越大,并且观察图像可以知道,差值在图像的边缘处更加明显,说明图像压缩对于物体边缘细节的影响最大。

2025-04-26 14:27:42 634

原创 快速傅里叶变换及其应用

观察高斯序列的时域和幅频特性,固定信号中参数p=8,改变的值,使q分别等于2,4,8,观察它们的时域和幅频特性,了解当q取不同值时对信号序列的时域和幅频特性的影响;固定q=8,改变p,使p分别等于8,13,14,观察参数p变化对信号序列的时域及幅频特性的影响,记录实验中观察到的现象,绘出相应的时域序列和幅频特性曲线,并说明频谱出现了哪些现象?如图所示,p 的变化主要影响了高斯序列的时域宽度,随着p的增大而变宽,最高点也向右偏移,而频谱的形状和宽度保持不变,只是整体位置发生了偏移。

2025-04-23 13:48:59 580

原创 信号处理基础

令x(n)为一复随机序列,其实部和虚部在-10≤n≤20区间,均匀分布于[0,1]之间,用Matlab验证DTFT的折叠特性(提示:序列的折叠用fliplr()函数,折叠后序列的下标为-fliplr(n))一个线性时不变系统的差分方程为y(n)=0.8y(n-1)+x(n),求出并画出它对输入x(n)=cos(0.05πn)u(n)得稳态响应。③将①中的x(n)扩展为以10为周期的函数x10(n) = x ( n + 10 ),绘制出四个周期。x2(n)=n∑x(n-k)(求和从k=1至k=5)

2025-04-21 17:51:26 1023

原创 计算机网络学习心得2——路由协议RIP配置与分析

```192.168.3.0/24[120/1] via 192.168.2.70,00:00:24,GigabitEthernet0/0/1```:表示目的网络192.168.3.0/24的路由信息:通过跳数为120的路径,经由192.168.2.70这个下一跳路由器,从名为G0/0/1的接口发送数据包。-```192.168.1.0/24 is directly connected, GigabitEthernet0/0/0```:192.168.1.0/24通过G0/0/0直接连接。

2025-04-18 11:20:43 805

原创 计算机网络学习心得1——报文分析理解TCP/IP协议栈

根据抓到的报文,TCP连接建立示意图如下:- `序号(seq)`:序号字段指示了 TCP 报文中的数据部分的第一个字节的序列号,序号用于按序传输数据和重新组装数据流,而接收方使用序号来确认收到的数据并按序组装数据流。在报文4与报文5中,序号均为0,而在报文6中,序号变为1,表示已经发送了1个字节的数据。- `确认号(ack)`:确认号的作用功能与序号大体相似。确认号字段指示了接收方期望收到的下一个字节的序列号。

2025-04-17 14:28:51 1055

原创 编译原理学习心得4

后来,我通过在F() 方法中包含了对括号的特殊处理逻辑,它会递归调用 E() 来解析括号内的完整表达式,并确保匹配的右括号存在。根据属性定义编写预测翻译程序,以便对输入的符号串进行语法和语义分析,并计算各文法符号的语义值。2. 表达式解析模块(E(), R(), T(), Q(), F())E():表示表达式的最高层级解析,负责解析由项组成的加法或减法表达式。F():最底层的解析函数,用于解析基础元素如数字或括号内的表达式。T():表示乘除表达式的解析,是E()的一部分。

2025-04-15 08:20:19 1003

原创 编译原理学习心得3

如果某非终结符A的候选式为ε,则产生式表示为“A::=”,即产生式的右部为空。通过编写预测分析法语法分析程序掌握预测分析法的基本原理、FIRST和FOLLOW集的计算、预测分析表的构造方法以及语法分析法主控程序的设计。输出的结果按照实验内容依次输出消除左递归后的文法,非终结符的FIRST和FOLLOW集,预测分析表、是否为LL(1)文法,以及输出测试字符串利用预测分析法进行语法分析。(1) 实验报告的内容应该包括:实验目的、实验要求、测试方案及测试结果、实验小结、主要方法的源代码。附录:主要方法的源代码。

2025-04-12 17:08:22 965

原创 编译原理学习心得2

在一开始,这个递归下降分析器的设计只能测试一次公式,不够智能,于是我在最后增加了一个循环,用于用户自己选择是否退出程序,使用y/n来选择是否继续。printf("表达式错误:期望 '%c',但实际得到 '%c'\n", expected, input[pos]);(1) 实验报告的内容应该包括:实验目的、实验要求、测试方案及测试结果、实验小结、主要方法的源代码。如下图,使用了正确的表达式与错误的表达式分别测试了这个递归下降分析器的设计。(2)编程时注意编程风格:空行的使用、注释的使用、缩进的使用等。

2025-04-09 10:48:13 876

原创 编译原理心得体会1

一开始的输出结果会出现:(4, "{\"),后来我发现是因为代码写成了:fprintf(output, "(%d, \"{\\\")\n", TOKEN_DELIMITER);编写一个词法分析器,从输入的源程序(编写的语言为C语言的一个子集)中,识别出各个具有独立意义的单词,即基本保留字、标识符、常数、运算符、分隔符五大类。一开始设计的处理未知字符的方式为:fprintf(output, "(TOKEN_ERROR, \"Unknown character: %c\")\n", token[0]);

2025-04-08 16:03:07 1073

原创 数学建模学习心得2——初等模型2

设计矩阵构建:通过 ones(length(lengths), 1) 创建一列常数项,并与身长和胸围的转置合并成一个设计矩阵 X。设计矩阵构建:通过 ones(length(lengths), 1) 创建一列常数项,并与身长和胸围的转置合并成一个设计矩阵 X。params:一个列向量,包含拟合得到的回归系数,包括截距和两个自变量(身长和胸围)的系数。params:一个列向量,包含拟合得到的回归系数,包括截距和两个自变量(身长和胸围)的系数。质量预测:利用设计矩阵和回归参数计算预测的质量。

2025-04-04 12:56:17 697

原创 数学建模学习心得一——初等模型

modelFunc 是待拟合的模型,A0 是初始猜测,t 和 y 是数据,options 用于控制输出信息。通过对举重运动员的级别和成绩数据进行对数变换,使用线性回归拟合幂函数模型,从而预测不同重量级别下的成绩,并比较拟合模型与指定模型的预测值,同时计算并排名2020年东京奥运会的折合成绩。返回一个包含多项式系数的数组 p,其中 p(1) 是二次项系数,p(2) 是一次项系数,p(3) 是常数项。分析:使用线性回归得到拟合的幂函数模型的参数,其中b是斜率,a是经过指数变换后的截距。

2025-04-03 21:13:28 964 1

空空如也

空空如也

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

TA关注的人

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