← 2022 · 华为 笔试

推荐答案 测试一下

reg [7:0] mem [1:256];initial $readmemh("mem.data", mern, 128. 1):对于mem行为正确的描述是

A.从地址1开始,写128个地址 B.从地址128开始,写1个地址
单选题 中等 笔试真题单选

参考答案

正确选项为C。$readmemh系统函数的调用格式为 $readmemh("文件名", 存储器名, 起始地址, 结束地址)。本题中起始地址为128,结束地址为1,由于起始地址大于结束地址,读取数据时将按地址递减顺序写入,即从地址128开始,依次写入127、126、...,直到地址1(包含)。共写入128个地址单元(128到1共128个地址)。选项A说从地址1开始写128个地址,与递减顺序不符;选项B说从地址128开始写1个地址,而结束地址为1,实际写入多个地址,错误。因此C正确。注意:原题中写为"128. 1"可能是笔误,实际应为"128, 1"。易错点:混淆$readmemh中起始地址和结束地址的大小关系导致的方向错误,以及误解为只写一个地址。

涉及知识点

  • $readmemh系统函数格式
  • 地址范围参数的含义
  • 起始地址大于结束地址时的递减写入
  • 存储器数组索引范围与地址顺序
  • 函数调用中参数分隔符的正确使用
← 上一题
登录后反馈错题
下一题 →