news 2026/7/7 0:16:21

计算机系统要素:测试文件解读

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
计算机系统要素:测试文件解读
// 加载16位与门的硬件描述文件 load And16.hdl, // 指定测试输出文件 output-file And16.out, // 指定对比的标准答案文件 compare-to And16.cmp, // 定义输出格式:a(二进制16位)、b(二进制16位)、out(二进制16位) output-list a%B1.16.1 b%B1.16.1 out%B1.16.1; // 测试用例1:全0 & 全0 → 全0 set a %B0000000000000000, set b %B0000000000000000, eval, // 执行运算 output; // 输出结果 // 测试用例2:全0 & 全1 → 全0 set a %B0000000000000000, set b %B1111111111111111, eval, output; // 测试用例3:全1 & 全1 → 全1 set a %B1111111111111111, set b %B1111111111111111, eval, output; // 测试用例4:交替位 & 反交替位 → 全0 set a %B1010101010101010, set b %B0101010101010101, eval, output; // 测试用例5:部分重叠位 & 部分重叠位 → 重叠位保留 set a %B0011110011000011, set b %B0000111111110000, eval, output; // 测试用例6:随机位组合 → 逐位与运算 set a %B0001001000110100, set b %B1001100001110110, eval, output;

关键知识点解析:

一、指令作用

  • load:加载待测试的硬件描述文件(And16.hdl);
  • output-file:指定测试结果输出文件;
  • compare-to:指定标准答案文件,用于自动比对测试结果;
  • output-list:定义输出格式(二进制 16 位,显示 a、b、out);
  • set:设置输入信号 a/b 的值;
  • eval:执行硬件逻辑运算;
  • output:输出运算结果。

二、a%B1.16.1语法完全解析

在 Hack 硬件测试脚本(.tst)的output-list指令中,a%B1.16.1输出格式控制符,用于定义信号a的显示规则,拆解如下:

组成部分含义
a待显示的信号名(此处指 16 位输入信号 a,可替换为 b/out 等其他信号);
%格式符分隔符,标识后续为格式定义;
B数值显示进制:B= 二进制(Binary),其他可选值:D= 十进制、H= 十六进制;
1「位数对齐规则」:1表示高位在前(大端显示),若为0则低位在前;
.16「固定显示位数」:强制显示 16 位,不足补 0(核心!保证 16 位信号完整显示);
.1「分组间隔」:1表示无分组(连续显示),若为4则每 4 位分隔(如1111_0000);

核心作用

a%B1.16.1最终效果:将 16 位信号 a 以「高位在前、无分组、补 0 至 16 位」的二进制形式完整显示

举例说明

假设信号a的实际值是二进制1010(仅 4 位),不同格式符的显示效果对比:

格式符显示结果说明
a%B1.16.10000000000001010补 0 至 16 位,高位在前
a%B0.16.11010000000000000补 0 至 16 位,低位在前
a%B1.8.100001010补 0 至 8 位,高位在前
a%B1.16.40000_0000_0000_101016 位、每 4 位分组显示
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/7 5:54:26

Java 不“性感”,却最抗压:一门语言如何在高风险系统中长期存活

在技术社区里,Java 很少成为“最受追捧”的语言。它不轻盈、不新潮,也不追求语法层面的惊艳。然而,当系统进入高并发、强一致、高可用的深水区,Java 却一次又一次成为最终选择。这种反差,恰恰揭示了 Java 的真正价值。…

作者头像 李华
网站建设 2026/7/7 14:24:53

5.8W25Q64 实验(下)-嵌入式铁头山羊STM32笔记

实验任务 按钮切换 LED 亮灭,用 W25Q64(上图右下角)保存 LED 的最后一次亮灭状态(亮为 1,暗写 0)。 在断电操作下,重新上电后可以保持 LED 在断电前的亮灭状态(工业中可用作关键参数…

作者头像 李华
网站建设 2026/7/7 17:40:14

受控组件 vs 非受控组件

核心区别受控组件 (Controlled Components)由 React 完全控制,表单数据由 React 组件的 state 管理。非受控组件 (Uncontrolled Components)由 DOM 自身管理,通过 ref 获取表单值。详细对比特性受控组件非受控组件数据管理React stateDOM值更新onChange …

作者头像 李华
网站建设 2026/7/7 9:16:26

HTTPS 原理详解

1. HTTPS 是什么?HTTPS HTTP SSL/TLSHTTP:超文本传输协议(明文传输)SSL/TLS:安全套接层/传输层安全协议(加密层)2. 为什么需要 HTTPS?攻击类型HTTP 风险HTTPS 防护窃听数据明文传输…

作者头像 李华
网站建设 2026/7/7 9:35:35

Cookie 与 Session 的区别及 Cookie 传输机制

1. 核心区别对比表特性CookieSession存储位置客户端浏览器服务器端存储内容文本数据(key-value)对象数据(通常有Session ID)安全性较低(可被篡改)较高(服务器控制)存储大小每个域名通…

作者头像 李华