- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
编辑:
没想到这个问题这么快就火了。根据我已经收到的答案,我似乎遗漏了一条重要的信息。模式是 不是固定数量的位 。有些字母可能有更多或更少的位。即,B 有 5 位,但 C 可能最多使用 6 位,但没有一个使用超过一个字节。我在我的问题中包含了一个“A”位模式的例子,它每行使用 7 位。另请参阅问题底部的编辑。
我是组装新手。我有对应于字母文本表示的位模式。每个 1 代表一个 $(或任何符号),每个 0 代表一个空格。 IE:
$$$$ 11110
$ $ 10001
$ $ 10001
$$$$ 11110
$ $ 10001
$ $ 10001
$$$$ 11110
$ 0001000
$ $ 0010100
$$$$$ 0111110
$ $ 1000001
patternb: dw 011110b,010001b,010001b,011110b,010001b,010001b,011110b
rowloop:
mov bl,[patternb+si] ;iterate through each element in binary array
patternloop:
mov bh,bl ;move bit pattern into register so that we can change it
and bh,1 ;AND register to find set bits and store back in register
shr bl,1 ;SHIFT original bit pettern right
cmp bh,1 ;check if bit is set or not (1=set, else 0)
je writesym ;if set, write symbol
jne writeblank ;if not set, write space
####
# #
# #
####
# #
# #
####
00001b
的答案,然后将位左移。然后比较结果以查看应该打印哪个符号。这也不起作用,但因为位模式并不总是固定的,所以无论如何都不是解决方案。
mov bh,bl ;move bit pattern into register so that we can change it
and bh,10000b ;AND register to find set bits and store back in register
rol bh,1 ;rol result to obtain 00001b
shl bl,1 ;SHIFT original bit pettern right
cmp bh,1 ;check if bit is set or not (1=set, else 0)
je writesym ;if set, write symbol
jne writeblank ;if not set, write space
011110000b
等而不是
011110b
否则汇编程序将其隐式存储为
00011101
正如 Martin Rosenau 的回答中提到的,我们不想要)和完整的
10000000b
(因为我们最多使用 8 位,这让我们检查 MSB)而不是 1(
000000001b
),因为我试图之前做,然后使用上面的 ROL 和比较方法(或者只是将它与
10000000b
进行比较)。循环总共运行 7 次(由于每个字母有 7 行/位模式,除了 A 有 4 行,所以 A 打印不正确,但这是一个我可以在某些条件下解决的问题。程序可以运行并打印现在正确。这是我使用的代码:
mov bh,bl ;move bit pattern into register so that we can change it
and bh,10000000b ;AND register to find set bits and store back in register
rol bh,1 ;shift MSB to LSB to compare (or could just compare with 10000000b instead)
shl bl,1 ;SHIFT original bit pettern left
cmp bh,1 ;check if bit is set or not (or use cmp bh,10000000b and omit rol above)
je writesym ;if set, write symbol
jne writeblank ;if not set, write space
最佳答案
Ideally I'd want it to start comparing from the most significant bit somehow which should then print it in the correct order
10000b
,又名
16
)和左移而不是右移?
mov bh,bl ;move bit pattern into register so that we can change it
and bh,10000b ;AND register to find set bits and store back in register
shl bl,1 ;SHIFT original bit pattern left
cmp bh,10000b ;check if bit is set or not (1=set, else 0)
je writesym ;if set, write symbol
jne writeblank ;if not set, write space
mov bh,bl ;move bit pattern into register so that we can change it
shr bh,cl ;the assumption being that cl has the width of your bit pattern
dec cl ;next bit
and bh,1 ;AND register to find set bits and store back in register
cmp bh,1 ;check if bit is set or not (1=set, else 0)
je writesym ;if set, write symbol
jne writeblank ;if not set, write space
al
将 AND 位模式存储在另一个寄存器中(例如
1
)并左移适当的计数(例如
shl al,cl
),然后使用
al
作为操作数而不是
10000b
如上面的第一个例子。
关于assembly - 从最高有效位或高位开始提取寄存器的位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55467193/
我刚刚开始学习,我的一项练习需要帮助。 我需要最终用户输入每个月的降雨量。然后我需要输出平均降雨量、最高月份和最低月份以及降雨量高于平均水平的月份。 我一直在最高和最低中得到相同的数字,我不知道为什么
我试图让一排 div 都与最高的那个的高度相匹配,所以它们看起来是统一的。 我已经阅读了很多这方面的资料,但似乎找不到任何适用于跨浏览器的解决方案。 我目前使用的脚本是: var maxHei
我有一个像 [1,4,3,1,6,5,1,4,4] 的数组 这里最高元素频率是 3 ,我需要从数组中选择频率为 3 的所有元素,如上例中的 [1,4] 。 我已经尝试过这个 var count = {
我有一个学生记录列表,grades ,我想按 GPA 排序,返回前 5 个结果。由于某种原因count awk '{ if (count awk '{ if (count<=8) print $3,
我有一个用于显示博客文章的页面。在页面的开头,我使用以下 SQL 获取数据: SELECT posts.*, count(comments.post_id) as number_of_comments
我有一张 table 城市 |状态|比赛|值(value) 可以有多个相同城市/州/种族和不同值的记录。 我想创建一个新表,其中每个城市|州|种族有一条记录 与 计数(原始表中包含城市/州/种族的记录
我是一名初级 Java 程序员(例如 0 级...)。我正在做这个项目,但我已经被难住了好几天了。我可能还有很多我没有注意到的小错误。 项目是这样的: 要求用户输入从 0.00 到 100.00 的一
我已经对我的数据进行了分组。现在,我要做的是每周从“高”列中选择最高值,并从“低”列中选择最低值,然后使用最高值减去最低值得到范围。但是代码总是错误的。有人对我有想法吗? 这是我的 DataFrame
所以几个月前我在参加编程面试时,由于某种原因这个问题让我绊倒了。我可以想到几个解决方案,但其中大多数似乎效率极低。虽然多年来我一直以某种身份进行编程,但我目前正在大学攻读 CS 学位,所以我的引用点可
我已经制定了一个程序来显示给定日期的特定时间的最高和最低流行项目。该过程没有错误或异常,并且一切正常。如您所见,为了显示 Items 的第一条记录,查询重复了两次,但唯一的区别在于顺序(ASC 和 D
我正在尝试将配对的 div 设置为相同的高度。 Some text Some text Some textSome textSome textSome textSome text Som
R 提供了最大值和最小值,但除了对整个向量进行排序然后从此向量中选取值 x 之外,我没有看到一种真正快速的方法来查找顺序中的另一个值。 例如,是否有更快的方法来获取第二高值? 最佳答案 使用sort(
这是我的命令: top -b -n 1 | head -3 | tail -n 1 | awk '{ print $2 }' 我运行一个 bash 脚本来获取这些详细信息(还有平均负载和内存消耗)并将
对于这个计划,我的目标是...使用 findKth 查找最高分、最低分、中位数和平均分用户必须输入数字(输入-1以停止扫描),但他们不知道有多少个以及是否已排序但是,我在尝试执行此操作时遇到了一些问题
我正在创建这个网站: https://www.melkerhei.be/smeltkroes/index.html 左上角的标志应该是可以点击的。这是代码:
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 关闭 9 年前。 Improve this
我的 table 是这样的: name | var ---------------- Joe | 3 Liz | 1 Liz | 4 Joe | 2 Peter
我有这个: function sayHello() { return new Promise( resolve => { throw new Error('reject');
JSFiddle:Example 我正在寻找一种方法来使容器 div 的高度等于其最高的子级。 每个其他子项的大小都应调整为容器的高度。 如果子元素超出其宽度,我还需要容器水平滚动。 到目前为止,我已
我有一个大小为 208 的列表(208 个句子数组),它看起来像: all_words = [["this is a sentence ... "] , [" another one hello bo
我是一名优秀的程序员,十分优秀!