孤星1119 发表于 2021-10-1 22:41:11

用汇编开发了一个半熟Linux程序

有些技术问题,如图所示的,中间部分全部为0x00,不知道如何用汇编转换成16进制数值。

这是我的hexdump,在Linux x64环境可运行,好了后再公开源码和上传可执行文件。





simonzhd 发表于 2021-10-1 23:04:08

汇编语言我是一窍不通,只觉得很高深;P

孤星1119 发表于 2021-10-1 23:44:31

simonzhd 发表于 2021-10-1 23:04
汇编语言我是一窍不通,只觉得很高深

我觉得终端用户的体验就是从应用层软件所得,网页和APP开发人员功不可没。

当然,用了C/C++,人们会说输给汇编,用了汇编,人们会说你没开发过编译器,或者没开发过操作系统。
开发了操作系统,人们又会说你没设计硬件。设计了硬件,人们则会说你没发明半导体...... 晕死。
不是我凭空想象的,真的有人那么说过(后半行)。

孤星1119 发表于 2021-10-2 00:45:42

本帖最后由 孤星1119 于 2021-10-2 01:04 编辑

解决了技术问题,完成了项目!开源代码。





simonzhd 发表于 2021-10-2 07:41:51

孤星1119 发表于 2021-10-2 00:45
解决了技术问题,完成了项目!开源代码。

下载打开了,代码量不多但不懂{:10_466:}

孤星1119 发表于 2021-10-2 08:19:21

simonzhd 发表于 2021-10-2 07:41
下载打开了,代码量不多但不懂

这个比较复杂点,况且我写得很乱,没有系统化。

等一下我开个汇编“Hello World"介绍帖,会比较容易的。

simonzhd 发表于 2021-10-2 09:19:24

孤星1119 发表于 2021-10-2 08:19
这个比较复杂点,况且我写得很乱,没有系统化。

等一下我开个汇编“Hello World"介绍帖,会比较容易的。 ...

哈哈,好啊,欢迎孤星开讲,一般计算机语言的第一门课都是“hello world”{:10_455:}

Starrry 发表于 2022-2-21 16:28:12

本帖最后由 Starrry 于 2022-2-22 17:46 编辑




特别又改成Windows环境下适合运行的工具。

000000003C 3F 78 6D 6C 20 76 65 72 73 69 6F 6E 3D 22 31   <?xml version="1
000000102E 30 22 20 65 6E 63 6F 64 69 6E 67 3D 22 55 54   .0" encoding="UT
0000002046 2D 38 22 3F 3E 0D 0A 0D 0A 3C 21 45 4E 54 49   F-8"?>....<!ENTI
0000003054 59 20 25 20 6F 6E 65 72 72 6F 72 74 79 70 65   TY % onerrortype
0000004073 20 22 28 69 67 6E 6F 72 65 20 7C 20 61 62 6F   s "(ignore | abo
0000005072 74 29 22 20 3E 0D 0A 0D 0A 3C 21 45 4E 54 49   rt)" >....<!ENTI
0000006054 59 20 25 20 72 65 67 69 73 74 72 79 61 63 74   TY % registryact
0000007069 6F 6E 74 79 70 65 73 20 22 28 69 6D 61 67 65   iontypes "(image
0000008020 7C 20 61 70 70 65 6E 64 20 7C 20 72 65 6D 6F    | append | remo
0000009076 65 29 22 20 3E 0D 0A 0D 0A 3C 21 45 4E 54 49   ve)" >....<!ENTI
000000A054 59 20 25 20 64 61 74 61 74 79 70 65 73 20 22   TY % datatypes "
000000B028 63 68 61 72 20 7C 20 73 68 6F 72 74 20 7C 20   (char | short |
000000C069 6E 74 20 7C 20 69 6E 74 36 34 20 7C 20 6C 6F   int | int64 | lo
000000D06E 67 20 7C 20 6C 6F 6E 67 6C 6F 6E 67 20 7C 0D   ng | longlong |.
000000E00A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20   .               
000000F020 20 20 20 20 20 20 20 75 63 68 61 72 20 7C 20         uchar |
0000010075 73 68 6F 72 74 20 7C 20 75 69 6E 74 20 7C 20   ushort | uint |
0000011075 69 6E 74 36 34 20 7C 20 75 6C 6F 6E 67 20 7C   uint64 | ulong |
0000012020 75 6C 6F 6E 67 6C 6F 6E 67 20 7C 0D 0A 20 20    ulonglong |..
0000013020 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0000014020 20 20 20 20 62 79 74 65 20 7C 20 77 6F 72 64      byte | word
0000015020 7C 20 64 77 6F 72 64 20 7C 20 71 77 6F 72 64    | dword | qword
0000016020 7C 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20    |..            
0000017020 20 20 20 20 20 20 20 20 20 20 62 6F 6F 6C 20            bool
000001807C 20 66 6C 6F 61 74 20 7C 20 64 6F 75 62 6C 65   | float | double



页: [1]
查看完整版本: 用汇编开发了一个半熟Linux程序