{
  "topic": "Modbus Mask Write Register",
  "origin": "本文原创合成数据，未采集真实设备",
  "cases": [
    {
      "case_id": "保留高位改低位",
      "kind": "正例",
      "input": {
        "current": 4660,
        "and_mask": 65520,
        "or_mask": 5
      },
      "expected": {
        "result": 4661,
        "preserved_mask": 65520,
        "controlled_mask": 15
      }
    },
    {
      "case_id": "OR不能覆盖被保留位",
      "kind": "正例",
      "input": {
        "current": 0,
        "and_mask": 65535,
        "or_mask": 65535
      },
      "expected": {
        "result": 0,
        "preserved_mask": 65535,
        "controlled_mask": 0
      }
    },
    {
      "case_id": "全清",
      "kind": "正例",
      "input": {
        "current": 65535,
        "and_mask": 0,
        "or_mask": 0
      },
      "expected": {
        "result": 0,
        "preserved_mask": 0,
        "controlled_mask": 65535
      }
    },
    {
      "case_id": "超16位",
      "kind": "显式负例",
      "input": {
        "current": 1,
        "and_mask": 65536,
        "or_mask": 0
      },
      "expected_error": "字段超出16位"
    }
  ]
}
