V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
simbaCheng
V2EX  ›  问与答

如何理解《Intel#IA-32》文档中的 assert?

  •  
  •   simbaCheng · 2022-06-25 11:33:56 +08:00 · 1359 次点击
    这是一个创建于 881 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近在翻阅《 Intel® 64 and IA-32 Architectures Software Developer’s Manual 》文档,查 LOCK 指令的介绍。

    其中一段内容,尝试用好几个翻译软件翻译都感觉有些别扭(腾讯、DeepL 、有道、google )。

    原文在文档中的位置:
    <Volume 2 : Instruction Set Reference>
    <Chapter 3 Instruction Set Reference>
    <3.2 INSTRUCTIONS>
    <LOCK—Assert LOCK# Signal Prefix>

    原文:

    Causes the processor’s LOCK# signal to be asserted during execution of the accompanying instruction (turns the instruction into an atomic instruction). In a multiprocessor environment, the LOCK# signal ensures that the processor has exclusive use of any shared memory while the signal is asserted.
    

    译文:

    使处理器的 LOCK#信号在伴随的指令执行期间被断言(将指令转换为原子指令)。在多处理器环境中,lock#信号确保在断言该信号时处理器独占使用任何共享内存。
    

    想请教下各位,如何翻译、理解assert 、asserted?感觉不应该翻译成断言?(思考.jpg )

    第 1 条附言  ·  2022-06-25 14:19:38 +08:00

    后续: 通过后来查阅资料,感觉理解为"发送\拉起 信号"比较合适。 感谢回复的朋友们解惑

    6 条回复    2022-06-25 18:25:19 +08:00
    dahakawang
        1
    dahakawang  
       2022-06-25 12:12:16 +08:00
    feather12315
        2
    feather12315  
       2022-06-25 12:38:20 +08:00 via Android
    assert 我理解成“判断”的意思。

    整句话的含义是:
    如果某个时间间隔内 CPU core 存在 lock 信号,那么在这个期间执行的指令是原子性的
    secondwtq
        3
    secondwtq  
       2022-06-25 13:23:06 +08:00
    为什么非要纠结于把一个句子逐词翻译成另一个语言呢 ...

    我的理解是“在指令执行时设置 LOCK#信号”
    ivan_wl
        4
    ivan_wl  
       2022-06-25 13:48:24 +08:00
    assert 在这种语境下,意思是使拉起信号,使信号有效,反义词是 deassert
    simbaCheng
        5
    simbaCheng  
    OP
       2022-06-25 14:13:47 +08:00
    @dahakawang 感谢,学习到了
    @feather12315 嗯嗯,这样理解也没有问题。通过后面查阅资料,理解为:"发送信号" 更让我信服。
    @ivan_wl 嗯嗯,感谢,后续查阅资料,也觉得应该理解为:“发送信号”、"拉起信号" 。
    feather12315
        6
    feather12315  
       2022-06-25 18:25:19 +08:00 via Android
    @simbaCheng #5 你这提醒了我,这发送信号、拉起信号就是那种高低电平的意思吧
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4999 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 03:50 · PVG 11:50 · LAX 19:50 · JFK 22:50
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.