问题标签 [pep8-assembly]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
assembly - 包含 char Pep/8 的链表
早上好,
我正在尝试创建一个链表,其中每个节点必须包含一个字符。所以首先老师给了我们一个代码。这段代码创建了一个链表,我们可以在其中放置数字。然后我们必须更改代码以按大小顺序输出数字(0 到 99999)。这很容易做到。例如我可以输入:
"3 5 4 2 1"
我的清单将包含:
然后它将输出:12345
下一步是用 char 替换数字。
例如我输入:"hdbcu"
列表将分别包含每个字符:
那么它应该输出:bcdhu
所以我所做的是按照老师的建议将列表中值的大小从 2 个字节更改为 1。
我的问题是,如果我让它 2 个字节并做一个CHARI mVal,x
但如果我这样做(只放 1 个字节之后)它会起作用
然后它不再起作用并给我垃圾值(也弄乱了我的指针)
这是我的代码:https ://pastebin.com/yyHRB89V 它很长,所以我把它放在了 pastebin 中。
tl; dr:我必须将字符放入链表中,然后按字母顺序对它们进行排序。我不能把它们放在链表中。
assembly - 我应该编写一个汇编级程序,使用 LDBA 指令打印我的名字,并在 Pep 9 中直接寻址
所以在 Pep 9 中有一个打印出 .ascii “hi”的方法的例子。
我尝试使用名称逻辑来写我的名字,但输出显示奇怪的字符: Ñ
有人可以向我解释为什么这个逻辑不起作用,我希望有人能引导我朝着正确的方向前进。
pep8-assembly - 汇编语言中的 CPA。CPA 和累加器如何工作?
根据书,在汇编语言中,操作码 CPA 将内存中的操作数与累加器中的数据进行比较。我想知道指令 CPA 如何影响 A 寄存器(累加器)
#根据 PEP/8 模拟器,结果是“寄存器小于 0”,而累加器仍然是 1。
使用 CPA 时会发生什么?请帮我 ((
assembly - 汇编语言 Pep9 简介:向下移动多少
所以我对汇编语言很陌生,我的教授一直在上课和下课,所以我们没有太多时间真正彻底地阅读课程材料。所以对于我们的项目,我们使用的是 Pep9,我们有几件事要做,我很满意,但我需要帮助开始。
我们第 1 部分的目标是使用 pep9 简单地输入我们的名字。我们使用了 pep9 图 4.33 中内置的一个程序,它打印出字母“Hi”作为我们名字的格式。图中是这样显示的
横写的样子
我的名字是 Arslan,这就是我按照 ASC11 表编写它的方式
这会打印出我的名字“Arslan”
现在这是我的问题,我必须手动完成这一切,这意味着我必须从 0000 - 002A 绘制 ram,然后将它们向下移动我需要的量。所以我想问他们是否有更好的方法来做到这一点,这意味着在第一个示例中,字母“H”存储在位置 0D 中,字母“i”存储在位置 0E 中,总共有两个字母,但是当我添加了额外的还有 4 个带有加载和存储指令的字母,所有内容都向下移动,这些字母现在存储在位置 00024 - 0002B 现在是它们的算法或更简单的方法来计算位置将向下移动多少,它是如何从 0D 移动的第一个字母到25?
我觉得对此有一个简单的答案,但我对此很陌生,而且与 C++ 或 JAVA 相比,我对这种语言的速度很慢
assembly - 如何修复汇编语言代码中的无限循环:
所以我正在运行并为家庭作业创建这个程序,我在其中输入几个字符,然后将其与 7 进行比较,并计算输入了多少个 7,直到 # 符号结束程序。出于某种原因,我不知何故陷入了这个无限循环。我觉得我的逻辑没问题,但我根本不明白是什么导致它陷入无限循环。
assembly - 如何从 ASCII 表中导出操作数?
我是一名计算机科学专业的学生,目前正在学习计算机组织课程。我只想在理解如何在汇编中派生字符操作数方面得到一些帮助。汇编中的指令很简单,charo/chari,deco/deci等。我的误解在于操作数。例如:
您如何从“H”(十六进制等效值为 48)跃迁到 0x0007?任何澄清将不胜感激。我只是想解决这个问题,这样我就可以专注于逻辑。
由@mpetch 编辑:
缺少的是上下文。完整程序如下:
该程序的 Pep/8 编码为:
assembly - 我的机器语言在 pep9 中输出 gobblygook。我没有得到什么?
D1 00 0D F1 FC 16 D1 00 0E F1 FC 16 D1 00 0F F1 FC 16 00 48 69 33 zz
我只是用例子来学习。这应该说“嗨!” 在输出中。但是,它显示了我什至无法复制和粘贴的符号。这些数字是否以某种方式组合在一起?引用垃圾数据?我以为我清除了它。
一个简单的更正就可以了,我不明白。
assembly - 如何在 pep/9 中使用机器语言添加读取和添加十六进制数
这是一个机器语言程序,用于在 pep/9 中添加 3 个整数,并且运行良好。
我想在两个数字上加上一个负数 ex: -3 而不使用减法。
但条件是:
- 以十六进制存储 -3。
- 不要使用减法、求反或反转指令
预期输入:2、4、-3;
预期输出:3
我怎样才能做到这一点?
assembly - 如何在 Pep9 程序集中编写 if 语句?
如何在 Pep9 程序集中编写 if 语句?我想用 Pep9 汇编形式从 C 中编写这个 if 语句。
但是当输入大于 1 时我无法打印结果。这是我目前所拥有的:
第一个 if 语句工作正常。但第二个无法打印任何内容。你能指出问题出在哪里吗?
shared-libraries - ./Pep8:加载共享库时出错:Ubuntu 20.04 上的 libQtWebKit.so.4
我必须在我的 Ubuntu 20.04 上为我的组装课程安装 PEP/8,但是当我尝试运行该文件时:
./Pep8
我有这个错误:
./Pep8: error while loading shared libraries: libQtWebKit.so.4: cannot open shared object file: No such file or directory
但是,我在“/usr/lib/x86_64-linux-gnu/”中看到了这个库。
但我认为该程序是用 32 位架构制作的:
file Pep8
Pep8: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 2.6.15, BuildID[sha1]=59393bb4f063551ac708a7690b8cb2fce1121ded, with debug_info, not stripped
我不确定我必须做什么才能让它发挥作用。