随笔分类 - 编程
摘要:JXX(条件跳转)指令是汇编语言中程序流程控制的核心。它们根据EFLAGS寄存器中的标志位状态决定是否跳转,是实现if、while、for等高级语言逻辑的基石。 一、核心概览:JXX指令如何工作 所有JXX指令都遵循同一模式: JXX target_label ; 如果“XX”条件成立,则跳转到ta
阅读全文
摘要:EFLAGS是x86架构中最重要的寄存器之一,它记录了CPU运算后的状态信息,并控制着CPU的某些关键行为。理解EFLAGS是编写条件分支、实现算术逻辑和控制程序流程的基石。 下图展示了EFLAGS寄存器中主要标志位的布局: 第一部分:状态标志 (Status Flags) 这些是最常用的标志,由算
阅读全文
摘要:寻址方式 格式示例 (MOV 目标,源) 操作数位置 特点与用途 立即寻址 MOV EAX, 1234h 指令自身 数据直接编码在指令中,用于加载常数。 寄存器寻址 MOV EAX, EBX CPU寄存器 速度最快,用于寄存器间操作。 直接寻址 MOV EAX, [12345678h] 固定内存地址
阅读全文
摘要:核心位运算指令 1. 逻辑位运算指令 这些指令按位操作,CF 和 OF 标志位总被清零(0),SF 和 ZF 根据结果设置。 指令 格式 真值表/操作 核心用途与典型场景 AND AND dest, src 按位与:1&1=1, 其他=0 ① 位清零(屏蔽):将特定位设为0。AND AL, 1111
阅读全文
摘要:一、 数据在内存中的表示(数据类型) 在汇编层面,“数据类型”主要指数据在内存中的存储尺寸和解释方式。CPU指令根据尺寸决定操作多少内存。 类型 大小 (比特/字节) 表示范围(无符号) 表示范围(有符号) 常见用途 BYTE 8 bits / 1 byte 0 到 255 (0 到 FFh) -1
阅读全文
摘要:C语言跳转语句详解:break、continue、goto、return 在编写 C 语言程序时,有时我们需要提前退出循环、跳过某次执行,甚至跳转到程序中的其他位置。这就用到了跳转语句(Jump Statements)。 C语言提供了以下常用跳转语句: break:跳出当前循环或 switch co
阅读全文
摘要:C语言实现九九乘法表 一、输出目标 我们希望程序输出如下格式的九九乘法表: 1 * 1 = 1 1 * 2 = 2 2 * 2 = 4 1 * 3 = 3 2 * 3 = 6 3 * 3 = 9 ... 1 * 9 = 9 2 * 9 = 18 ... 9 * 9 = 81 注意: 每一行的乘数从
阅读全文
摘要:C语言实现猜数字小游戏 猜数字游戏是C语言学习中一个经典而实用的练习项目,它不仅帮助我们掌握基本的 输入输出、分支判断、循环结构,还涉及 随机数的生成 和 交互设计。今天我们就一步一步带你用C语言实现一个好玩的“猜数字”小游戏! 游戏规则 程序自动随机生成一个 1 到 100 之间的整数,玩家不断猜
阅读全文
摘要:随机数 在很多编程场景中,我们都需要用到随机数,例如抽奖程序、游戏机制、测试数据等。在 C 语言中,我们可以使用标准库函数 rand() 来生成随机数。 一、rand():生成随机整数 函数原型: #include <stdlib.h> int rand(void); 返回一个 [0, RAND_M
阅读全文
摘要:循环语句(循环结构) 一、什么是循环语句? 循环语句用于在满足某种条件下重复执行一段代码。当我们需要让程序自动重复运行某些操作时,就要使用循环结构。 二、while 循环 基本语法: while (条件表达式) { // 循环体 } 每次循环开始前先判断条件; 条件为真时执行循环体; 条件为假时跳出
阅读全文
摘要:分支语句(选择结构) 一、什么是分支语句? 分支语句用于根据条件执行不同的代码路径,是 C 语言中实现条件判断和流程控制的基本结构。它使程序具备“选择性”,能根据不同情况做出不同的处理。 二、if 语句 基本语法: if (条件表达式) { // 条件为真时执行的语句 } 示例: int score
阅读全文
摘要:讲解了C语言中的算术、赋值、比较、逻辑、三目运算符及类型转换。通过表格与示例展示各类运算符的使用方法、优先级和常见误区,辅以示例代码和注意事项,帮助读者掌握表达式计算及类型处理的核心知识。
阅读全文
摘要:本文系统介绍了 C 语言中的变量、常量及各种数据类型的基础知识,涵盖整型、字符型、浮点型的使用与范围,讲解了 sizeof运算符、进制表示与转换方法、原码反码补码的存储原理,以及整型和浮点型的溢出问题;同时对 const、static、extern等类型限定符进行说明,并通过大量代码示例对 printf`/scanf` 与 putchar/getchar的使用方式和区别进行了实用对比,是初学者理解 C 语言数据表达和输入输出机制的全面入门指南。
阅读全文
摘要:本文为NumPy系列第二篇,深入解析数组操作的核心方法:
重塑:通过reshape()灵活调整维度,利用flatten()一键展平多维数据;
合并:掌握np.concatenate()、vstack/hstack实现垂直/水平拼接,解决多数据集整合难题;
分割:精准切割数组的np.split()策略,应对数据分块处理需求。
阅读全文
摘要:本文系统讲解NumPy数组的核心操作,涵盖五大创建方法(np.array()、np.zeros()等)、关键属性(shape、dtype等)及数据类型转换(astype()),通过代码示例演示如何高效构建和操作多维数组。适合Python数据科学初学者。
阅读全文
摘要:Go 语言的错误处理机制通过 error 接口和自定义错误类型实现。panic 和 recover 机制用于处理不可恢复的错误。合理运用这些工具,开发者可以提升程序的稳定性和可维护性,提高代码质量。
阅读全文
摘要:Go语言基础学习,常用编码Json和Base64
阅读全文
摘要:使用Go语言实现了一个简单的 JSON 序列化和反序列化功能
阅读全文

浙公网安备 33010602011771号