社区
C++ 语言
帖子详情
有必要深入学习汇编语言吗?
duanjiayaocun
2011-11-09 11:48:24
我现在正在从事VC开发,最近发现自己对内存分配、进制转换和编码格式不是太熟悉,我改怎样提高自己呢?
尤其是一看到以为操作这些东西,我就头疼...
学习汇编会加深我对这些东西的理解吗?有必要深入学习汇编吗?还是说只要粗略的学习一下汇编,对其思想有一个大致的认识就行?
如果需要学习汇编,请大家根据我目前的情况给我推荐一本适合初学者的书籍吧,谢谢!
...全文
724
19
打赏
收藏
有必要深入学习汇编语言吗?
我现在正在从事VC开发,最近发现自己对内存分配、进制转换和编码格式不是太熟悉,我改怎样提高自己呢? 尤其是一看到以为操作这些东西,我就头疼... 学习汇编会加深我对这些东西的理解吗?有必要深入学习汇编吗?还是说只要粗略的学习一下汇编,对其思想有一个大致的认识就行? 如果需要学习汇编,请大家根据我目前的情况给我推荐一本适合初学者的书籍吧,谢谢!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
19 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
iamnobody
2011-11-10
打赏
举报
回复
只要懂内存分布,懂全部寄存器用法,懂全部指令的用法。写个计算器之类的小项目,应该就行了。不用太深入的。二进制是必须要懂的。不知道什么书好,因为我也是菜鸟。。
赵4老师
2011-11-10
打赏
举报
回复
计算机组成原理→DOS命令→汇编语言→C语言(不包括C++)、代码书写规范→数据结构、编译原理、操作系统→计算机网络、数据库原理、正则表达式→其它语言(包括C++)、架构……
rendao0563
2011-11-10
打赏
举报
回复
[Quote=引用 17 楼 zhao4zhong1 的回复:]
推荐使用WinHex软件查看文件原始字节内容。
对电脑而言没有乱码,只有二进制字节;对人脑才有乱码。
为什么要有数据结构这个东东?
因为要将现实世界或者抽象理论中的各种数据保存在计算机外存(光盘、硬盘、U盘……)或内存(ROM、RAM、SRAM……)里面的一维二进制字节数组中。
然后让CPU这个只会执行预先保存好的加减乘除移位条件转移……等机器指令的家伙按照人的意志去处理这些数据……
[/Quote]
WinHex可以在我空间下载到.
http://download.csdn.net/user/rendao0563
赵4老师
2011-11-10
打赏
举报
回复
推荐使用WinHex软件查看文件原始字节内容。
对电脑而言没有乱码,只有二进制字节;对人脑才有乱码。
为什么要有数据结构这个东东?
因为要将现实世界或者抽象理论中的各种数据保存在计算机外存(光盘、硬盘、U盘……)或内存(ROM、RAM、SRAM……)里面的一维二进制字节数组中。
然后让CPU这个只会执行预先保存好的加减乘除移位条件转移……等机器指令的家伙按照人的意志去处理这些数据。
赵4老师
2011-11-10
打赏
举报
回复
内存分配——操作系统之内存管理
进制转换——计算机组成原理
编码格式——各种规定而已(ASCII、GB2312、GBK、Unicode、BIG5……)
编码解码——各种变换而已(UrlEncode、Base64、LWZ、Zip……)
VC调试(TC或BC用TD调试)时按Alt+8、Alt+6和Alt+5,打开汇编窗口、内存窗口和寄存器窗口看每句C对应的汇编、单步执行并观察相应内存和寄存器变化,这样过一遍不就啥都明白了吗。
(Linux或Unix下可以在用GDB调试时,看每句C对应的汇编并单步执行观察相应内存和寄存器变化。)
想要从本质上理解C指针,必须学习汇编以及C和汇编的对应关系。
从汇编的角度理解和学习C语言的指针,原本看似复杂的东西就会变得非常简单!
指针即地址。“地址又是啥?”“只能从汇编语言和计算机组成原理的角度去解释了。”
提醒:
“学习用汇编语言写程序”
和
“VC调试(TC或BC用TD调试)时按Alt+8、Alt+6和Alt+5,打开汇编窗口、内存窗口和寄存器窗口看每句C对应的汇编、单步执行并观察相应内存和寄存器变化,这样过一遍不就啥都明白了吗。
(Linux或Unix下可以在用GDB调试时,看每句C对应的汇编并单步执行观察相应内存和寄存器变化。)
想要从本质上理解C指针,必须学习C和汇编的对应关系。”
不是一回事!
不要迷信书、考题、老师、回帖;
要迷信CPU、编译器、调试器、运行结果。
并请结合“盲人摸太阳”和“驾船出海时一定只带一个指南针。”加以理解。
asmilemyself
2011-11-10
打赏
举报
回复
王爽 + C++反汇编与逆向分析技术揭秘 入门加爆破,你想怎么着就怎么着,我有这书但是没时间看
terranflash
2011-11-10
打赏
举报
回复
汇编不需要深入,能看懂大部分汇编代码就行了
ryanxgyang
2011-11-10
打赏
举报
回复
可以先了解一下.
毕竟现在真正写汇编的机会比较少了,
但是调试的时候,如果能看点汇编的话,会有意外收获.
对于C语言来说"没学过汇编的人不能真正掌握C语言的真谛".
做VC上层的工作,汇编用的可能就比较少了.
做逆向分析,破解的时候,需要汇编.
你可以用OD看看你用VC生成的exe
入门的话 推荐王爽的书.
Zeroo_7
2011-11-10
打赏
举报
回复
没必要!
Zeroo_7
2011-11-10
打赏
举报
回复
没必要!
wangyang0726
2011-11-10
打赏
举报
回复
我觉得 爱好最重要啊
PG
2011-11-10
打赏
举报
回复
走高层的话,你不必纠结汇编,初步了解即可,如果你认为自己精力很旺盛的话深入一些也无妨,不过每个领域都是无底洞,这个你得自己衡量下利弊。
luciferisnotsatan
2011-11-10
打赏
举报
回复
有必要了解下。
至于是否要深入,看想从事哪方面工作了。
zzcmx2008
2011-11-10
打赏
举报
回复
大部分看懂就可以了
寻找自我
2011-11-10
打赏
举报
回复
正在学。。
汇编语言 ----王爽挺好。
ouen333
2011-11-10
打赏
举报
回复
加油吧,少年
hnhui520
2011-11-10
打赏
举报
回复
一直都想学,可也一直在找借口。
self001
2011-11-10
打赏
举报
回复
汇编:逆向 调试程序 单片机等;
学了当然好,不过不是那么容易的!
我也想学,但时间………………
crakme
2011-11-10
打赏
举报
回复
汇编不需要深入,能看懂大部分汇编代码就行了
汇编语言
学习
大全
送给爱好汇编的同学ing~~~
汇编语言
教程
《
汇编语言
》(Assembly Language)是计算机专业中一门重要的基础课程,是一种面向机器的低级语言。它依赖于硬件,能通过巧妙的程序设计充分发挥硬件的潜力。
汇编语言
程序产生的代码运行效率高。因此,到目前为止,许多软件系统(例如操作系统等)的核心部分仍然用
汇编语言
来编写。 计算机专业所培养的学生,不应仅仅满足于利用他人已开发出来的软件和软件工具来解决实际问题,还应具备有分析、研究原有软件系统,改进、完善、提高原有系统功能供广大用户使用的能力。
汇编语言
程序设计将使学生受到更严密、更系统的程序设计及其思维方法的训练,为
深入
分析、研究、开发新的软件系统打下良好的训练基础。 本课程的教学目的是使学生进一步了解计算机的基本组成,汇编指令的格式和使用方法,以及用
汇编语言
进行程序设计的基本思想和方法。于此同时,希望学生能了解用
汇编语言
程序来充分发挥计算机性能的基本思想。 本课程的
学习
也将为后续课程(如操作系统、接口与通信、计算机外围设备等)的
学习
提供
必要
的前期知识。
Tasm 5.0安装文件
Tasm 5.0 安装文件 Borland
masm.exe link.exe
汇编软件,生成.obj文件和.exe程序
C语言高级实例解析
《C语言高级实例解析》本书特点: ·以实例为主。本书采用实例讲解的方式,先介绍
必要
背景知识,之后是加注释的源码,再给出分析和改进方向。 ·涉及的知识面广。从内存分配,到串行、并行口编程,再到界面开发,几乎含盖了C编程的方方面面。 ·实用性强。实例均有具体项目中的源代码,实例非常具有参考价值,而且很多实例可以在新的项目中使用。 ·本书的源代码都可在附送的光盘中找到,读者可以将代码拷贝到自己的编译器中,进行修改、编译使用。 ·在本书光盘中赠送了大量其他高级实例。 C语言把高级语言的基本结构和语句与低级语言的实用性结合起来。C语言可以像
汇编语言
一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元。在系统开发,特别是操作系统、底层开发中,C语言的效率是其他编程语言难以企及的。C语言较之
汇编语言
的普及和易用性决定了在强调效率的开发过程中将采用C语言。 本书以实例讲解为主线,对C编程做了
深入
和具体的探讨。涉及的知识面广,从内存分配,到串行、并行口编程,再到界面开发、动画和高级应用,几乎涵盖了C语言编程的方方面面。通过对本书的
学习
,对C语言的高级编程,将育一个深刻的理解和掌握,而不仅局限于简单的数据结构和算法。 本书既可以供一般读者作为
深入
学习
C语言的教材,也可以作为工程人员的参考手册。本书适合中、高级读者,
学习
过C语言语法的初级读者也可以通过
学习
本书快速成长为C语言的编程高手。
C++ 语言
65,208
社区成员
250,517
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章