"叔叔建议我远离Python,从汇编语言学起......"

C语言与CPP编程 2023-02-24 08:30



你好,我是飞宇。

最近跟朋友一起创建了一个学习圈子,如果你是计算机小白新手或者打算学习Linux C/C++技术栈,欢迎了解一二。

据《2021-2022 中国开发者调查报告》显示,历史悠久的汇编语言是程序员最讨厌的编程语言(占比 37%),其次便是 C++(17%)和 C(16%)

作为一门面向机器的程序设计语言,汇编语言固然十分精细,但对于程序员而言却不太友好——不好记忆,里面也没有指针的概念,所有的变量、函数都由栈或堆上的偏移地址所代替。与高级编程语言相比,汇编在可读性、开发效率和可移植性上显然存在不足。

所以,我们自然觉得:都 2022 年了,在众多高级编程语言的包围下,还会有人将汇编作为程序员入门的第一个编程语言吗?有的,前阵子一位 Reddit 用户(以下用“小 R”代称)就发帖称:“我的叔叔,一位前程序员,建议我从汇编语言学起…


1、建议原因:应该先敲下最难的“钉子”

小 R 表示,TA 最近对学习编程有点兴趣,因此找了之前做程序员的叔叔,想问问有啥入门建议,结果 TA 叔叔开口就是:“一定要远离那些简单的高级编程语言,如 Python 或 Ruby。”

叔叔对小 R 解释道,当年他第一次学习基础代码时,一度认为自己是个天才,因为他几天内就很好地掌握了新技能。直到后来他又接触到了 C 语言,才完全颠覆了他的自我认知——他被“狠狠”难住了一段时间,而且之前掌握的那些基础技能在学习 C 语言上完全没用。

简单的编程语言显然不会教你任何关于编程和计算机究竟是如何工作的知识。你现在还年轻,有一个能吸收很多知识的‘海绵大脑’,还有许多互联网指南可参考,你应该先敲下最难的‘钉子’,把汇编或者 C 作为第一门语言,以便之后对任何事情都可以轻松学习。”

2、不必对高级编程语言避之不及

显然,小 R 叔叔的这番言论跟现实中大多程序员的选择相悖,小 R 也因此茫然地将问题抛给了广大网友:“你们对此的看法是什么?”

部分网友认为,能说出这种观点的“叔叔”肯定是大龄程序员

  • “他告诉你要以一种他自己都没尝试过的方式去做,而这个观点仿佛来自 30-40 年前。”

  • “你叔叔太老派了。如果他是在 1980 年之前毕业的,那可以理解,毕竟汇编在当时很常见。但到 1990 年以后,已经逐渐有更多的选择了。”

有网友调侃道,这种学习方法太过于“追本溯源”了

  • “这感觉就像是说,在你开车之前,你首先要知道它的每一个部分是如何工作的。”

  • “既然这样,那就先学半导体物理,然后学晶体管,然后是 CMOS 逻辑,然后是逻辑门,然后是数字电路,然后是计算机构成,这样更能彰显你叔叔的‘厉害’。”

话虽如此,但每一门编程语言能流传至今,必定有其的意义,汇编也是如此,现在操作系统中依旧还有汇编的身影。被许多程序员厌恶的汇编语言,更适用于底层硬件,如单片机、工业控制、实时控制等,它更为精简,运行效率也更高。

两年前,曾有一位学过汇编的程序员分享道:

”我也学过汇编,做一个程序要写好多条命令,而且思路要清晰,对程序员智商要求非常高。我以前单位有几个八十年代大学毕业的程序员,智商真的是非常高。现在的编程真的很傻瓜化,从没学过编程的短期内也能很快自学编程。“

平心而论,学好汇编确实能深入理解计算机底层原理,但这并不意味着就一定要对高级编程语言避之不及——如今,高级编程语言的开发效率、适用范围都远超过汇编,更符合现在企业所追求的高效。

最后引用一位网友的建议:“如果你想成为编译器开发者或硬件工程师这类人,你可以好好学汇编;但如果你只是从事软件开发,最多根据自身能力适当了解一下汇编即可。”

那么,作为程序员的你,接触并学习的第一门编程语言是什么呢?

参考链接:https://www.reddit.com/r/learnprogramming/comments/wedgo2/my_uncle_a_former_programmer_has_recommended_that/

本文转自公众号“CSDN”,ID:CSDNnews
EOF


我的私人微信

你好,我是飞宇,本硕均于某中流985 CS就读,先后于百度搜索以及字节某电商部门担任Linux C/C++后端研发工程师。

同时,我也是知乎博主@韩飞宇,日常分享C/C++、计算机学习经验、工作体会,欢迎点击阅读原文围观我分享的C/C++学习知识


👇点击阅读原文查看你错过的C/C++知识

C语言与CPP编程 C语言/C++开发,C语言/C++基础知识,C语言/C++学习路线,C语言/C++进阶,数据结构;算法;python;计算机基础等
评论 (6)
游客_108932023-02-24 16:27
可以从c开始,大部分语言的语法都算是c系,懂得堆、栈内存知识有助于其他语言的理解,而且也很重要
游客_094852023-02-24 13:09
C艹,C,Python,C#……
游客_150262023-02-24 12:14
我的建议是都学,不然就是菜。一个生产力工具,一个辅助工具,都是好猫。
游客_815672023-02-24 09:22
讨厌其实是因为没学会、付出和收获不当而已
游客_671052023-02-24 09:20
我的学习顺序:Fortran、pascal、汇编、C、C 、单片机汇编和C、C#,初步了解的是Python、Java、julia、Rust、go ,快退休了,下一步想混合玩,可能需要学学js……
游客_083292023-02-24 08:39
我是从汇编语言学起的,从4bit MCU学起,后来学8051,C语言,现在也一直用C,python写点编译脚本。
  • 深圳触觉智能SOM3506核心板现已上市,搭载瑞芯微RK3506B/J超低功耗处理器(1.5GHz三核A7+M0),低功耗满载仅0.7W,支持40℃~85℃工作环境,即日起宽温级59元/工业级68元,特价开售!芯片介绍RK3506是瑞芯微Rockchip在2024年第四季度全新推出的Arm嵌入式芯片平台,三核Cortex-A7+单核Cortex-M0多核异构设计,CPU频率达1.5Ghz, M0 MCU为200Mhz。RK3506适用场景简介工业控制‌:RK3506适用于工业控制、工业通信、人机
    Industio_触觉智能 2025-03-07 10:03 139浏览
  • 文/Leon编辑/cc孙聪颖2025年全国两会进行时,作为“十四五”规划收官之年,本届两会释放出坚定目标、稳中求进、以进促稳等信号。其中,企业家们的建议备受关注,关系到民营经济在2025年的走向。作为国内科技制造业的“老兵”,全国人大代表、TCL集团创始人及董事长李东生在本届两会中提出三份代表建议,包括《关于优化中国科技制造业融资环境的建议》、《关于加强AI深度伪造欺诈管理的建议》和《关于降低灵活就业人员社会保险参保门槛的建议》,表现出对科技制造、AI发展和劳动者保障方面的关注。会后,李东生接受
    华尔街科技眼 2025-03-06 19:41 123浏览
  • 多人同时共享相同无线网络,以下场景是否是您熟悉的日常?姐姐:「妈~我在房间在线上课,影音一直断断续续的怎么上课啊!」奶奶:「媳妇啊~我在在线追剧,影片一直卡卡的,实在让人生气!」除此之外,同时间有老公在跟客户开在线会议,还有弟弟在玩在线游戏,而妈妈自己其实也在客厅追剧,同时间加总起来,共有五个人同时使用这个网络!我们不论是在家里、咖啡厅、餐厅、商场或是公司,都会面临到周遭充斥着非常多的无线路由器(AP),若同时间每位使用者透过手机、平板或是笔电连接到相同的一个网络,可想而知网络上的壅塞及相互干扰
    百佳泰测试实验室 2025-03-06 16:50 153浏览
  • 服务器应用环境与客户需求PCIe 5.0高速接口技术的成熟驱动着生成式AI与高效能运算等相关应用蓬勃发展。在随着企业对服务器性能的要求日益严苛,服务器更新换代的周期也持续加快。在此背景下,白牌与DIY(Do It Yourself)服务器市场迎来了新的发展契机,但同时也面临着更趋复杂的技术挑战。传统上,白牌与DIY服务器以其高度客制化与成本效益优势受到市场青睐。然而,随着PCIe 5.0等高速技术的导入,服务器系统的复杂度大幅提升,对组装技术与组件兼容性也就提出更高的要求。举个简单的例子来说,P
    百佳泰测试实验室 2025-03-06 17:00 158浏览
  • Sub-GHz,即工作频段低于1GHz的无线通信技术,常见频段有315MHz、433MHz、868MHz与915MHz等。其可借助无线电波在自由空间传播的特性,把数据调制到射频载波上进行传输,达成物联网设备间的无线通信,是物联网设备实现高效、稳定、无缝交互的“通信基石”。典型射频信号(无线电波)收发电路简示在工业自动化、智慧城市、智慧农业与智能家居等物联网领域中,LoRa、Wi-SUN、Z-Wave、Sigfox等工业级通信协议大多运行在Sub-GHz频段。而正是通过Sub-GHz射频技术,传感
    华普微HOPERF 2025-03-07 11:39 144浏览
  • 一、系统概述MYD-LD25X搭载的Debian系统包含以太网、WIFI/BT、USB、RS485、RS232、CAN、AUDIO、HDMI显示和摄像头等功能,同时也集成了XFCE轻量化桌面、VNC远程操控、SWITCH网络交换和TSN时间敏感网络功能,为工业设备赋予“超强算力+实时响应+极简运维”的体验!类别名称描述源码TF-AArm Trusted Firmware 2.8OP-TEEOP-TEE 3.19BootloaderU-boot 2022.10KernelLinux Ke
    米尔电子嵌入式 2025-03-07 14:08 223浏览
  • 近年来,越来越多的企业在5S管理的基础上,开始追求6S、7S甚至8S管理,仿佛S越多,管理就越先进,企业就越优秀。于是,6S增加了“安全”,7S又加上了“节约”,8S甚至引入了“学习”……看似更加全面,实则很多企业只是机械地增加S,却忽略了管理的核心目标:提升效率、降低浪费、优化工作环境。优思学院认为,5S本身已经是一套成熟的精益管理工具,它的核心理念不仅简单高效,而且易于实施和推广。如果企业只是为了赶时髦,盲目增加S,而没有真正理解5S的本质,那么这些额外的“S”很可能会变成管理上的负担,而不
    优思学院 2025-03-07 12:43 165浏览
  • 深圳触觉智能RK3506开发板现已上市,开启预售!搭载瑞芯微RK3506B/J超低功耗工业处理器(1.5GHz三核A7+M0,主频1.5GHz);支持1280×1280显示、双百兆网口、星闪无线三模,板载高达2路CAN FD与5路串口。RK3506适用场景简介工业控制‌:RK3506适用于工业控制、工业通信、人机交互等应用场景。其多核异构架构(3xCortex-A7+Cortex-M0)和外设接口丰富,支持Buildroot、Yocto系统,适合轻量级HMI应用‌。‌工业通信‌:RK3506均支
    Industio_触觉智能 2025-03-07 10:04 119浏览
  • 在企业管理和职场环境中,权力是一个常被提及却又让人感到微妙的话题。有人觉得它充满吸引力,有人却对它避之不及。然而,不管你对权力的态度如何,理解它、掌握它,甚至善用它,都是职场成功的重要一环。今天,我们就来深入探讨权力的本质,特别是个人权力和社会权力的区别,以及如何在职场中逐步建立属于自己的影响力。权力的两种面貌:你掌控自己,还是掌控他人?说到权力,首先要区分它的两种类型。个人权力是你对自己生活的掌控感。比如,你能自由决定自己的职业方向,不用总是请示他人。这种权力让人感到踏实和满足,是我们在生活中
    优思学院 2025-03-07 15:56 172浏览
  •        深夜的公园里,当路灯熄灭后,传统监控摄像头只能拍出模糊的黑白画面,仿佛老式胶片电影里的场景。而搭载为旌瑶光ISP的摄像头,却能像猫科动物一样,在几乎全黑的环境中捕捉到行人衣服的颜色、树叶的纹理,甚至快速跑动的宠物狗毛发细节。这种从“黑白默片”到“全彩4K电影”的跨越,背后是为旌瑶光ISP对传统红外补光技术的颠覆性创新。一、传统方案之困:被红外光“绑架”的夜视世界        传统安防摄像头依赖红外
    中科领创 2025-03-07 16:50 276浏览
  • ​CS6212是一款可分别用于USB Type-C主机/显示端口源应用的带重定时的有源开关。这设备符合USB 3.2标准版本1.0和USB Type-C标准上的VESA DisplayPort Alt模式 1.0版,支持通过GPIO或12C进行灵活的模式切换。此设备支持USB 3.2第2x1代 运行速度高达10Gbps,DisplayPort 1.4运行速度高达HBR3 8.1Gbps。CS6212管脚分布及功能定义:CS6212支持重定时器训练,并支持USB 3.2标准中定义的状态状态机(RT
    QQ1540182856 2025-03-07 10:09 150浏览
我要评论
6
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦