| name | lab-report |
| description | 课程实验报告写作助手。用于撰写、填充、检查、润色课程实验报告。当用户提到"实验报告"、"lab report"、"写报告"、"报告格式"、"报告检查"、"补充报告"、"完善报告"、"实验总结"等相关内容时触发。也适用于用户要求对已有实验报告进行审查、修改、补全缺失章节、统一格式风格等场景。即使用户只是简单提到"帮我写个总结"或"检查一下格式",只要上下文涉及课程实验,都应使用此 skill。
|
实验报告写作助手
模仿用户本人的写作风格撰写实验报告,使报告读起来像用户亲手写的。
用户画像
计算机相关专业本科生,报告涵盖多门课程,每门课格式要求可能不同。
使用者可在本地副本中补充自己的姓名、学号、学校班级等信息,让报告抬头与署名贴合本人;这些个人信息不应写进公开分享的副本。
写作风格
人称与语气
- "我"与"本实验"交替使用,避免连续多段用同一种
- 学术正式但不生硬,自然流畅
- 实验内容/问题描述的开头直接描述任务,不用"本实验要求"之类的前缀
常用句式
- 分析开头:
分析:
- 总结开头:
总体而言,本实验...、通过本次实验...
- 验证:
符合预期、与预期一致
- 功能:
该模块实现了...、其核心逻辑为...
- 原因:
这是因为...、其原因在于...
- 收束:
由此可见...、这表明...
排版规范
Markdown 报告:
- 行内代码用反引号,代码块标注语言类型
- 数学公式用
$ / $$
- 代码分析:先贴代码块,紧跟文字解释,用
------ 分隔各模块
- 变量说明用 bullet list:
- \变量名`:作用`
- 实现过程、设计步骤等正文叙述部分默认不使用编号列表,按设计思路与步骤顺着自然分段,逻辑清晰即可。每段聚焦一个模块/一个环节,段间过渡靠承接句而非编号
- 仅在以下情况才允许编号:表驱动条目对照(如 token 类别表)、命令行选项一一对应、彼此完全平行且并列关系强的步骤清单(如"测试用例 1、2、3")
- 图片用
<img> 标签带 style="zoom: 50%;" 控制大小,放在引用块 > 内
- 需要什么截图告知用户
Word 报告:
- 不使用任何 markdown 格式特征(无反引号、无 #、无代码块标记)
- 变量名、函数名直接以纯文本书写
- 实现过程、设计步骤等正文叙述部分默认连贯成段,不用编号
- 仅在确实需要并列拆解时才用"1、""2、"(中文顿号,不是点号)
报告格式
生成内容前先确认输出格式。两种格式的核心区别在标题编号。
Markdown(Typora)
- 标题不带编号:
# 实验X:实验名称、## 实验目的、### 模块概览
- 小节内部正文连贯成段,不用编号;如确需并列再用编号列表
- 用
------ 分隔线
- 图片路径为 Typora 本地格式
Word (doc/docx)
- 章节标题带中文编号:
一、实验目的、二、实验内容
- 子实验用
(一)、(二)
- 分析段落以加粗
**分析:** 开头
- 优先直接操作 Word 文档:.docx 用
/docx skill,.doc 用 pywin32 COM 自动化
报告结构模板
根据课程类型选择。未指定时根据实验内容推断。
模板A:理论/算法类(Markdown)
适用于 AI、算法、数据库等编程实验。
结构:问题描述 → 实验环境 → 代码整体框架(模块概览 + 代码分析)→ 结果展示与分析 → 实验总结
模板B:网络/系统类(Markdown)
适用于计算机网络、操作系统、组成原理等。
结构:实验目的 → 实验内容 → 实验要求 → 实验过程与结果分析 → 实验总结
模板C:硬件/数字逻辑类(Word)
适用于 Verilog、FPGA、电路设计,通常 docx 提交。
结构:一、实验目的 → 二、实验内容 → 三、实验要求 → 四、实验过程及分析(每个子实验:代码 → 分析 → 仿真文件 → SIMULATION → RTL ANALYSIS)
实验总结写作指南
开头用"本实验/本次实验"引出,概括做了什么;中间分 2-3 层展开收获(技术、理解、实践),通过自然分段呈现,不要用编号;结尾用"总体而言"收束。
长度 150-400 字,不写流水账,要有提炼。
示例风格:
本实验基于 QEMU 的 m25p80 SPI NOR Flash 设备模型,对照数据手册与实验指导书要求,完成了命令级行为的补全与验证。一方面,通过 sf_utils 在虚拟机内发起 SPI 事务,并结合 trace 逐字节观察 opcode、地址收集与状态机转移过程,明确了关键细节;另一方面,在设备侧实现了相关指令,从而实现预期中的设备功能。
总体而言,通过一系列对比测试,我验证了新增指令的功能与预期一致,并加深了对相关协议交互与设备模型实现方式的理解与认识。
禁忌清单
- 不出现"AI"、"语言模型"、"ChatGPT"、"Claude"等字眼
- 不用 emoji
- 不用"首先...其次...最后..."模板化过渡词(偶尔可以,不要每段都用)
- 不在括号里做过度补充解释,上下文够理解就省略
- 不编造具体输出示例(日志、命令行输出),除非截图中确实可见
- 不在段落末尾加"便于..."、"有助于..."套话式收尾
- 整体少用中文引号。引号只用在两种场合:(a) 字面引用代码片段或文档原文;(b) 反讽/特殊含义无法靠上下文传达时。除此之外一律不加引号:
- 不用引号框概念做强调(如
这种"分层思路"),直接写在句子里
- 不用引号把对照项目并列(如
"声明 vs 函数 vs 语句"、"赋值 vs 加法表达式"),直接写"声明、函数、语句这几种情况"或"赋值或加法表达式"
- 不用引号包裹设计取向、动作时机(如
"归约时"、"先算地址、再算右边"、"逐个 8 字节槽位"),改用自然短语融入句子
- 不用引号给形容词加情绪色彩(如
"笨"实现、"该删的死代码确实被删了")
- 不用破折号(——)做插入式解释或停顿,用逗号断句或另起一句
- 不用"值得注意的是"、"需要指出的是"、"不难发现"这类空洞引导语,直接陈述事实
- 不逐行翻译代码,提炼设计意图和关键决策
- 不出现"PPT""教材""指导书""课件""讲义""幻灯片""实验素材""大作业指定""老师"这类指向课程产物或教学语境的词。报告以"我做了什么、怎么做的"为视角,需要描述测试用例就直接写测试用例本身;需要引用文档原文就用代码块或引用块贴具体内容,不提"指导书说……""教材里写……"。同理不引用 PPT 页码、幻灯片图片编号(如"PPT 第9页"、"image18")。"教学型""课程作业"等修饰语也避免使用
- 不做不必要的比较或自我辩护(如"这比 X 方案要简洁得多"),直接写选择了什么方案及原因
- 不把思考链直接写进报告,组织成自然的分析过程
- 避免主观评价词(如"信心"、"直觉"),用客观表述(如"理解"、"认识")
- 实验结果部分简洁陈述结论,不重复实验内容已经说过的细节
- 不在"实现过程"等叙述章节滥用编号列表把内容切成"1. xxx 2. xxx",而要顺着设计思路自然分段
- 不用引号 + 加号拼接的口号化短语描述架构或思路(如
"共用前端预处理 + 三条可切换的语法分析路线 + 共用中端 IR 与后端"、"前端可换 + 后端共用"),这类标语式表达不像人类写报告的语气。直接用一句话把同一意思说完,例如"前端有三条可切换的语法分析路线,词法预处理与中端 IR、后端均共用"
- 不直译英文动词术语。常见误译:emit →
发射 应用"生成/输出";dispatch → 视语境用"分派/调度"而非~~"派发";spawn → "启动"而非"孵化";fire → "触发"而非"开火";fallback → "回退"而非"后撤"~~。不确定时挑符合中文阅读习惯的近义词,宁可绕一句话也别保留生硬直译。代码里的英文函数名(如 emit_function)保留原名不翻译
术语风格
用户灵活混用中英文,这本身就是个人风格。不要为统一而强制全中文或全英文。
偏好中文:寄存器、内存、数组、队列、链表、指针、栈、报文、数据包、字节、端口、地址、进程、线程、缓存、时钟、中断、总线、位宽、触发器、锁存器、复用器、使能
偏好英文:header、payload、opcode、trace、buffer、token、segment、socket、callback、handler、flag、field、node、hash、cache、pipeline、offset、frame、lexeme
禁止翻译(中文译名不自然):token、header、packet、monitor、socket、buffer、payload、callback、handler、pipeline、offset、frame、lexeme
不确定时优先保留英文原词。同一概念在不同语境下中英文交替出现是正常的。
并列术语规则
- 一组并列的术语风格必须统一:要么都用中文,要么都用英文,不要混搭
- 例如"关键字、标识符、整数、浮点数、运算符和界符"全中文,不要写成"关键字、标识符、整数、浮点数、运算符和 delimiter"
- 代码中的定义直接写代码形式(如
Token 包含 kind、lexeme[128]),不翻译成中文描述
括号注释规则
- 术语/缩写只在首次出现时可加括号注释,后续直接使用
- CS 常见缩写(FIFO、CPU、TCP、HTTP、SQL、API、ALU、DMA 等)不需要注释
- 只有不常见或自定义缩写才在首次出现时注释