Win32汇编语言和一般的高级语言有什么不同?

时间:2022-03-20 12:29:01
我们上学期上了《汇编语言》这门课,主要是16位的汇编编程,感觉很爽,能直接操纵各个寄存器,要实现条件转移和循环都得用很原始的方法。前两天我买了一本Win32的汇编编程教程,看了一些,发现它好象和一些高级语言没什么区别,有条件转移和循环的伪指令,和C++中的if、when没什么区别,最底层的也被windows封装了,我们只能调用API函数,这和我原先想象中的汇编很不一样,让我失望。在windows下,我们最低只能走到这一步吗?

15 个解决方案

#1


windows 下也可以直接操作大多数的寄存器啊, 如果你喜欢的话, 条件转移和循环一样地可以使用 16 位类似的很原始的方法的. 但对普通的应用程序, 不能再和 dos 下似的直接操作硬件设备了.

#2


>>前两天我买了一本Win32的汇编编程教程,看了一些,发现它好象和一些高级语言没什么区别,有条件转移和循环的伪指令,和C++中的if、when没什么区别,最底层的也被windows封装了,我们只能调用API函数...


我们仍然可以直接操作大多数的寄存器,条件转移和循环的伪指令是可选的, 你也可以自己用汇编指令来实现.

我们不仅能调用API函数,而且可以切入RING 0, 实现更底层的操作.

#3


我感觉有关汇编的资料比较少啊,大家能不能多深入介绍介绍

#4


大家能不能推荐一些好书?

#5


MASM32附带的ICZTUTES和演示程序就是最好的教材了.

#6


up

#7


计算一下2/3就知道有什么不同了

#8


WIN32ASM一点用处也没有,它能干的事情,C语言调用WIN32API就行了,而且代码好读,更为简练,这就是高级语言的好处,它看起来很象自然的语言。这样程序员可以与机器更好的交互。
但是32位机器的汇编语言是有用处的!!!你是搞破解也好,写驱动也好,工控也好。都要用这个!
我已经说了许多关于WIN32ASM的废话了。以后俺不再多嘴。
汇编要学,但WIN32ASM是废物!
反正WINDOWS程序设计只需要两种工具,SDK,MFC。使用一种语言,C/C++就可以做任何事情了。
但DOS时代,是汇编语言的天下!。

#9


要想得到近可能小的,效率高的代码就应该用win32asm,而且用c去操作寄存器也能办到,但代价很大

#10


想象一个偷qq的木马8kb 包括邮件发送

#11


Win32汇编挺好耍的。
可以做一些其它语言想都不敢想的事情

#12


--------------->想象一个偷qq的木马8kb 包括邮件发送
偷QQ的木马,最初是使用C+WIN32 API,使用钩子做的.邮件发送,最初也是用C+WIN SOCKET API做的嘛.

#13


能用c就绝对不用汇编,能用vb就绝对不用c

#14


真累,个人爱好不同,你用你喜欢的,我用我喜欢的,没必要再纠缠下去。

#15


有局限的有约束的又要区束缚
条条框框呀!!!!!!!
我发表一下个人意见不要轻信仅供参考
其实这些总结这些结论都是站在了不同立场不同的角度
你自己要考虑自己的方向趋势取向
 
在理论上一切东西都是要靠机器码来实现他们的不同只不过在开发过程不一样
汇编对应机器那些跨平台的也都需要面向特定平台的平台支持多了中间手段
建议找准自己是注意力的关键

#1


windows 下也可以直接操作大多数的寄存器啊, 如果你喜欢的话, 条件转移和循环一样地可以使用 16 位类似的很原始的方法的. 但对普通的应用程序, 不能再和 dos 下似的直接操作硬件设备了.

#2


>>前两天我买了一本Win32的汇编编程教程,看了一些,发现它好象和一些高级语言没什么区别,有条件转移和循环的伪指令,和C++中的if、when没什么区别,最底层的也被windows封装了,我们只能调用API函数...


我们仍然可以直接操作大多数的寄存器,条件转移和循环的伪指令是可选的, 你也可以自己用汇编指令来实现.

我们不仅能调用API函数,而且可以切入RING 0, 实现更底层的操作.

#3


我感觉有关汇编的资料比较少啊,大家能不能多深入介绍介绍

#4


大家能不能推荐一些好书?

#5


MASM32附带的ICZTUTES和演示程序就是最好的教材了.

#6


up

#7


计算一下2/3就知道有什么不同了

#8


WIN32ASM一点用处也没有,它能干的事情,C语言调用WIN32API就行了,而且代码好读,更为简练,这就是高级语言的好处,它看起来很象自然的语言。这样程序员可以与机器更好的交互。
但是32位机器的汇编语言是有用处的!!!你是搞破解也好,写驱动也好,工控也好。都要用这个!
我已经说了许多关于WIN32ASM的废话了。以后俺不再多嘴。
汇编要学,但WIN32ASM是废物!
反正WINDOWS程序设计只需要两种工具,SDK,MFC。使用一种语言,C/C++就可以做任何事情了。
但DOS时代,是汇编语言的天下!。

#9


要想得到近可能小的,效率高的代码就应该用win32asm,而且用c去操作寄存器也能办到,但代价很大

#10


想象一个偷qq的木马8kb 包括邮件发送

#11


Win32汇编挺好耍的。
可以做一些其它语言想都不敢想的事情

#12


--------------->想象一个偷qq的木马8kb 包括邮件发送
偷QQ的木马,最初是使用C+WIN32 API,使用钩子做的.邮件发送,最初也是用C+WIN SOCKET API做的嘛.

#13


能用c就绝对不用汇编,能用vb就绝对不用c

#14


真累,个人爱好不同,你用你喜欢的,我用我喜欢的,没必要再纠缠下去。

#15


有局限的有约束的又要区束缚
条条框框呀!!!!!!!
我发表一下个人意见不要轻信仅供参考
其实这些总结这些结论都是站在了不同立场不同的角度
你自己要考虑自己的方向趋势取向
 
在理论上一切东西都是要靠机器码来实现他们的不同只不过在开发过程不一样
汇编对应机器那些跨平台的也都需要面向特定平台的平台支持多了中间手段
建议找准自己是注意力的关键