如何将位转换为0而不将0更改为1

时间:2017-10-30 15:09:35

标签: assembly masm masm32

我正在学习装配测试。测试基于32x32 LED模拟器,模拟器中的每个LED代表32位,如果位为1则打开,如果为0则打开。 Here is the Visual

用户应选择0-31之间的行。当他们从左侧开始一个接一个地将LED从开启切换到关闭时。

到目前为止,这是我的代码:

.data
row         DWORD   0
y           DWORD   80000000h
message     BYTE    'Enter in a row',0
caption     BYTE    'Welcome to CA296',0

.code
    main:nop

        invoke version
        invoke setPattern, 7
        invoke readIntegerWithMessage, ADDR message
        mov row, eax
L1:     invoke readRow, row
        mov ecx,y
        xor eax,ecx
        invoke writeRow, row, eax
        shr y,1
        jmp L1

正如你可能猜到的那样,所有这一切只是反转这些位,以便关闭位开启而开启位变为关闭,我如何仅定位打开的LED?

0 个答案:

没有答案