I very rarely watch tutorials but the arm segment made this video worth watching.
@MarkMusante
7 ай бұрын
you're in luck, lauriewired has a whole series on armv7: kzitem.info/door/PLn_It163He32Ujm-l_czgEBhbJjOUgFhg&si=3d2NIEvWJLvbse_X
@blackice3403
7 ай бұрын
@@MarkMusanteTY
@BlackHermit
7 ай бұрын
Same here!
@PapaSMURFFS
7 ай бұрын
Oh man, there are so many callouts to Serial Experiments: Lain in your staging/setting! Long time since I watched it, I love it!
@khoaluong60
Ай бұрын
well the channel name literally have "wired" in it xD
@JannisAdmek
7 ай бұрын
I just discovered this channel, the visuals are super neat! The computers in the background, the Windows XP task bar and the window border around the web cam, wow!
@norbert.kiszka
Ай бұрын
And she also have analog oscilloscopes in the background in a some of her recordings :)
@BrunoSXS
7 ай бұрын
The effor to create the vfx for those videos are something to marvel on its own... What impresses me is that the content is even greater. I know my way around 6502 asm and seeing this made me want to do arm asm just because...
@stacksmasherninja7266
6 ай бұрын
Great video! Especially the assembly section. In my (albeit limited) experience, it often helps to allocate memory in terms of pages rather than individual bytes. The page size is definitely not a consistent or constant standard value that you can simply hardcode in your programs. Effects of page size (fragmentation or page faults) are super apparent when deploying anything large-ish scale (say PostgreSQL db) on your ARM device. If you insist on doing everything in assembly, make sure your program adjusts for this variability in page size when compiling and makes it so that certain variables are "aligned" well for faster access. Your C compiler will most likely already handle all of this better than you without you even realizing it which is why in my opinion, programming in C is a "safer" bet for performance, readability and your own sanity.
@StellarFireflyGaming-rm2xu
6 ай бұрын
Not only appreciating the low-level information in the tutorial, but also loving the SE: Lain production aesthetics!
@StellarFireflyGaming-rm2xu
6 ай бұрын
My only little complaint is referring to C's malloc() as a keyword instead of a standard library function. I know that at a beginner's level it may as well be treated like a keyword. But it wouldn't have taken much nor would it have been too confusing to beginners, to simply mention that it is a function and then explain why that "#include " is at the top.
@lost4468yt
6 ай бұрын
This channel is really impressive. You seem to have everything down somehow - you know a ton about the subject matter, your presenting is brilliant and you can distil your knowledge down, the video style and presentation is fantastic, and so is the cinematography. Really everything is brilliant, and it's clear you're still improving (e.g. I looked through the channel and your thumbnails have gotten way better over the past several months - I love this one and the recursion one). Can't believe I haven't seen your videos sooner. Looks like the algorithm has latched onto them though as I'm getting suggested a bunch recently.
@yubtubtime
5 ай бұрын
I already knew how to manage dynamic memory in C, so I had a leg up, but those were all better examples than I can remember seeing anywhere else outside of Kernighan and Ritchie! I tried to learn C++ when I was 12, but the syntax seemed needlessly exotic, so I've avoided it since. Your example was clear enough that I finally see the utility though, for example, in its string formatting. I've also kinda' sorta' wanted to learn assembly for 25+ years, but put it off because it also seemed so tedious, but that was such a well motivated example that I have a real itch to try my hand with it in earnest now! Awesome channel-keep up the great work 🙌
@haroldcruz8550
5 ай бұрын
My only problem with the video is that she type casted a malloc return.
@Kaspean-sea-monster
7 ай бұрын
Let's all love Lain!
@mikey38632
3 ай бұрын
I am relatively new to your content, but after several videos I want to say you are so easy to follow and understand, and interesting to watch as well with your videography and set. Your video and sound are great, and your presentation skill/presence is spot on. I hope to see you on stage one of these days at a tech conference if that is in your plans!
@markmanning2921
7 ай бұрын
It is a better practice to say foo *f = malloc(sizeof *f)) for what ever type foo is i think it would also be good if you explained on thre ASM version why you were invoking the C compiler, not everyone will understand the requirement to link your object files after compilation or why you would not just do that using ld itself.
@oszb
7 ай бұрын
very dank editing.
@jeffreycanipe1936
3 ай бұрын
Just came across these videos. They are awesome!!!
@emjizone
6 ай бұрын
@LaurieWired Thank you for this instrutive demo. I feel at home in the atmosphere you create in these videos, even though my house has never looked like this.
@WillianSilvaNet
6 ай бұрын
I also have to agree with most of you folks. This video edition is amazing! And thanks for the ARM part. I never saw an ASM code for ARM before. It's quite different!
@Yu-Fei-Hung
3 ай бұрын
Such an “ancient” reference to Serial Experiments Lain at the title animation! 🤘
@michaelbauers8800
7 ай бұрын
I get the point of this video, I just wanted to add something. II you are doing serious C++ development, you probably want to use std::shared_ptr, and similar smart pointer allocators. When the last reference goes out of scope, the memory will be released. I am sure there's situations where this will cause problems, but for typical use cases, this might simplify the program.
@dazealex
6 ай бұрын
Aww man, I am so behind on the new things in C++, last time I worked with it was in 1998... Things have changed for the better. Thanks for the tip.
@IamusTheFox
6 ай бұрын
@@dazealexoh man, you'll love it! So many things that will make your life better. Jason Turner has made a few videos on the most important features of c++11,14,17,20, and 23 if you want a quick reference I'd start there
@dazealex
6 ай бұрын
@@IamusTheFox Oh thanks man! Will check those out. Sounds like fun, and back to C++!
@QuantenMagier
4 ай бұрын
This is one of the reasons why C++ is worse than C; people don't know how to write proper code anymore and just trust weird garbage collections to manage their memory. I mean I can sometimes see use in reference counting like std::shared_ptr, but "when the last reference goes out of scope" makes me worry; please use proper delete statements even for your shared pointers and dont abuse them as garbage collectors to "simplify typical use cases", having a shared pointer means multiple references to the same object from different scopes and is not a typical use case, using them for single reference garbage collection is just abuse.
@IamusTheFox
4 ай бұрын
@@QuantenMagier Respectfully, I don't think you fully understand smart pointers. shared_ptr is not GC, and is an atomically counted variable that frees the memory when the counter is 0. I agree that you shouldn't reach for shared_ptr as your go-to tool. unique_ptr basically just calls the deleter when the object goes out of scope. No counting, nothing.
@standardtemplateconstruct1596
6 ай бұрын
what is protocol 7? ive fallen in love with your chrome and format. thats my first comment on video probably ever
@QW3RTYUU
7 ай бұрын
I hope this channel encourages more people to coding! I think if it gives a nice example to lookup to for girls to get into the field. You go and enjoy the coding people!
@jamestrent1110
18 күн бұрын
Thank you for interesting video. For me C++ designed to use/write thin abstractions, so, in case of memory allocation std::make_unique(...) is a way to go. That way it shows strength of higher level. Can combine memory allocation and initialisation, automatic deallocation, no leaks, regardless whether program terminates unexpectedly or succeeds. As for output, no need to use std::endl, cause it forces to flush buffers which is not needed and standard requires to flush it before program ends, but again for modern C++ std::print or std::println is nice abstraction which does the job and simplifies program, makes it more elegant
@Calypso694
7 ай бұрын
no idea who you are but the algorithm has blessed you. Subbed. Cool seeing code girls more often get recognized.
@InternetArbiter
6 ай бұрын
yeah you love seeing psyops and marketing don't you?
@Calypso694
6 ай бұрын
@@InternetArbiter what?
@DmitriNesterov
6 ай бұрын
Несмотря на то, что я знаю и английский и C, и C++, и немного Ассемблер, я ничего не понял, но получил массу эстетического удовольствия 😂❤ Присоединяюсь комментатором, которые пишут perfect.
@daemon_zero
4 ай бұрын
You were able to make a c/c++/ASM vídeo look modern and appealing. I love the "résistance hacker" aesthethic of it, that is the feel low level gives me. As for the content itself I'm still a student so I cannot opine on it, I'm just watching and trying to learn from it.
@davidwang7489
7 ай бұрын
Awesome! Now use assembly to write ARM page table entries to map in memory. 😊 That can be pretty useful in kernel mode shellcode.
@georginikoloff9280
6 ай бұрын
this video is really great. very neatly explained and the speaker is fantastic
@pogchamper228
3 ай бұрын
Working with numbers and letters is a little depressing. Watching KZitemrs like you boost my mood for sure. I like my job, but i expected more communication in my team. Respect.
@MrHaggyy
7 ай бұрын
It's quite interesting to look in the assembly generated by the C++ and C programs as well. If you want to go low level with C++ you can use placemet new. It's used to allocate a usefull chunk of memory, like the page you allocated in the ASM version. At a later point you can decide which datatypes you actually want and you can do fast addr+sizeof(dt) shananigans.
@IamusTheFox
6 ай бұрын
Bonus points for not treating c as the same as c++
@cervelliera
6 ай бұрын
I do not know anything about code, but great vid (Seriously, great narrator)
@Stakodron
6 ай бұрын
oh you played bournout that so cool theire are not many youtubers who credit those old charming games
@OneMilian
7 ай бұрын
Low Level is a good Level, Sometimes its unbelieveable easy to write fast assembly counter counterparts for performance needing C Tasks in a Code. Then linking all .o files.
@mambomambo4363
7 ай бұрын
Thanks for the video. I learnt a lot about the French revolutuon.
@SergeantPepper
7 ай бұрын
Thanks for showing the ARM assembly memory allocation example. KZitem is lacking in good ARM assembly memory resources. I fumbled my way through doing ARM memory allocation using the brk syscall. Now I know where to go if I want to use mmap
@CN-Aqi
5 ай бұрын
Hi friends, I hope to get in touch with you and become friends. I need some technical support, let's create wealth together.
@nomad-1776
7 ай бұрын
Thanks for the videos. I'm only on my second semester of computer science and find a lot of this to be confusing, though I'm learning a little bit I think. Some day I'll be able to read and write assembly proficiently too.
@anon_y_mousse
7 ай бұрын
In idiomatic modern C++, you shouldn't manually allocate memory at all. Better to either use std::vector if you want dynamic storage, or std::array to allocate on the stack. Calling to an allocator to store a single item is rather unconventional too. C doesn't require you to cast a void pointer to any other pointer type when assigning, and you should have mentioned that if someone wants the data to be initialized upon allocating, that they could use calloc() instead of malloc(). Of course, if you really need to manually allocate, you can still use all of the standard C functions in C++ and assembly, and in C++ you would need to cast the output of malloc(). Also, you can call `gcc` to both assemble and link, since you're using `as` anyway.
@nathanmarotz8945
6 ай бұрын
lain mentioned! busy learning julia and data science rn but bookmarking this for later.
@bit0fun
5 ай бұрын
From what I recall, you aren’t supposed to typecast malloc in C, only C++; I can’t remember specifics as to why, just that it was mentioned to me at some point.
@mr_noodler
5 ай бұрын
Great channel, very good stuff. What operating system are you running?? super interesting!!
@ThisIsJustADrillBit
5 ай бұрын
Do you have any content about heap exploitation? Would be awesome to better understand how things like user affer free or double free are actually leveraged
@cainabel2553
6 ай бұрын
I'm falling in love with your Mac aesthetics. OTOH I hate that aliasing flickering behind you!
@lanceward7048
5 ай бұрын
Gonna be a lot of dudes learning assembly soon, I see this working out well for the future of the USA’s cybersecurity
@Cazra-VaporwaveWitch
6 ай бұрын
So many SE: Lain references! I see that you are also a woman of culture. Great video! It kind of has me curious to try learning more about ARM assembly.
@code-dredd
6 ай бұрын
A few things: 1. malloc/free are functions, not keywords; 2. You don't have to type-cast the return value of malloc; 3. sizeof is also not a keyword, it's an operator; 4. you seem aware mmap/mmunmap are syscalls, but refer to to them as keywords a few times Other than fixing incorrect and/or inconsistent terminology, it was well done.
@nglpos
6 ай бұрын
One thing: Your use of "and/or" is incorrect. You should have simply used "and."
@code-dredd
6 ай бұрын
@@nglpos Not really. There were some cases where terminology used was correct, but not consistent. Therefore, "or" is warranted.
@nglpos
6 ай бұрын
@@code-dredd That's not how grammar of the English language works. Cut your loses...
@code-dredd
6 ай бұрын
@@nglpos You've cited no specific language rules here, but whatever helps you sleep at night. Your opinion is not only _demonstrably_ wrong (check a dictionary), but really not relevant.
@nglpos
6 ай бұрын
@@code-dredd Sure it is. You've already proven as much. Next time think before you post silly nit-picks.
@zdspider6778
2 ай бұрын
Any particular reason why you chose ARMv7 Assembly instead of x86?
@nonoisaidno6901
6 ай бұрын
masterclass !
@janwilmans5954
6 ай бұрын
In C++ why not use a vector or at the very least make_unique to allocate memory? Or was this intentional to make it look similar?
@devgalileu
6 ай бұрын
you are AMAZING
@totheknee
6 ай бұрын
9:04 - Note for advanced students: you don't need to free at the end of the program, the OS will do it for you. If it doesn't, find a better OS.
@douglasmb787
3 ай бұрын
so calloc works like the new? And the new on c++ is the same the java's new? 🤔
@marioc64
6 ай бұрын
Actually you shouldn't use new and delete in modern C++. C++ offers shared pointers, that automatically deletes an object if all shared pointer references are destroyed. Your example could be more like this: #include #include int main() { std::shared_ptr num_ptr = std::make_shared(); *num_ptr = 42; std::printf("Val=%d ", *num_ptr); return 0; } Have fun!
@surters
6 ай бұрын
I had expected more arena allocators in C++ and less mmap in asm. Also I got tired of all the asm code and moved to C, then omgz all the bookkeeping lets move to C++.
@rysiexo
6 ай бұрын
I don't know much of assembly, so I am not going to discuss that part. Although a nice topic for beginers, I see a couple of problem, mistakes you made in your code. One that struck me the most is explicit casting from type void* to int* in C as it's not necessary. None the less, good video.
@ralf391
6 ай бұрын
unlike new/delete, malloc/free aren’t keywords, but library functions
@grzegorzx939
6 ай бұрын
mov r0,#-1 is redundant, cause its only executed after cmp r0,#-1 and beq. That will make b alloc_exit also redundant. Not trying to complain, just my 6502 habbits.... good video.
@TheGmr140
6 ай бұрын
Nice overview of code types 😊😊
@nathsabari97
7 ай бұрын
Empress please come back
@desertfish74
7 ай бұрын
yo ho yo ho sail the high seas ?
@spartacocarlos8417
Ай бұрын
I'm old and I get used to write "if ( NULL == num_ptr )" in C/C++.
@ethernet764
Ай бұрын
Type casting the return value of malloc is unnecessary. Also it is better to use a variable as operand for sizeof instead of hard coded type: int *num_ptr = malloc(sizeof(*num_ptr));
@aurele2989
6 ай бұрын
The cast at 7:27 is unnecessary-- `void *` get implicitly promoted (in this case to an `int *`).
@solifugus
5 ай бұрын
It annoys me to see you using spaces to indent when that it was tabs are for. However, this was nice. I would be super happy if you could do more videos in RISC-V, though. In particular, I want to leave to use the RVV extension.
@rodrigo.alencar
6 ай бұрын
and the syscall is implemented in c in the kernel. I assume that this is just an exercise…. no point of doing ASM on top of an full operating system, you’ll just have a code that is not portable.
@ВладимирМинин-й3б
5 ай бұрын
Спасибо!❤
@MrJony-fv3ev
5 ай бұрын
I manage memory with switches in the circuit
@yairelad2000
6 ай бұрын
Can someone link the background photo?
@lmj5994
3 ай бұрын
I have mastered memory by using Java. Anything I have to think about that is not central to the task at hand is superfluous.
@mastershooter64
6 ай бұрын
Lol I love the 2008 vibe this video has
@emiliokevin
7 ай бұрын
Thank you asuka!
@neilmeich
5 ай бұрын
thanks
@markteague8889
6 ай бұрын
Nice job!
@americanswan
6 ай бұрын
Her voice!! It is so hard to click away.
@AEONIC_MUSIC
7 ай бұрын
what was the reason you picked 42? I'm in the 42 programming school so I thought it might be related since it's global
oh those good old x86 days, ps: no malloc, just stosbing to memory addresses :D
@genrabbit9995
3 ай бұрын
I found the C++ hardest to understand, C easiest.. No experience with any of the languages.. But seen Try... catch creep up in languages.. Don't like it on bit. But as I understand it, in C and C++ you allocate 4 byte, but in ASM, its 4096? if so why not 4096 in all. Except for that excellent video.
@navithecomputer482
6 ай бұрын
How do I subscribe to this 1000 times in a row?
@aichrist
6 ай бұрын
Good vid 👌
@iamvalenci4
6 ай бұрын
this video includes: Nice editing style, beautiful and smart girl,
@blackice3403
7 ай бұрын
Let's all Love lain!❤
@yce1234
6 ай бұрын
setting *num_ptr to 42 got me to subscribe. :-)
@slmille4
7 ай бұрын
Memory allocation is easy, it's deallocation that's the problem 😅
@--Nath--
7 ай бұрын
Meh, deallocation is easy too. Your application still working successfully when you deallocated something you still needed is the tough one. ;)
@yOkay_
6 ай бұрын
free?
@slmille4
6 ай бұрын
@@yOkay_ oops, something was still using it, now you have a "use-after-free" error
@yOkay_
6 ай бұрын
@@slmille4 I never forget a free
@slmille4
6 ай бұрын
@@alexsouza4701 that's only half the problem
@sudhanshugorwadkar3839
7 ай бұрын
The amount of effort and dedication you put in editing these videos is commendable👏 Great tutorial as always!
@chari6471
7 ай бұрын
Never subscribed to a channel so fast! What a really cool style of video, with clear, helpful explanations. Good up the good work :D
@TetrisMaster512
4 ай бұрын
Heads up for anyone working in C, you don't need to worry about casting the return value of malloc. Unlike in C++, void* will implicitly cast to other pointer types without throwing an invalid conversion error. This just maintains symmetry with casting *to* void* which is implicit in both C and C++. It's ultimately a stylistic decision whether to keep the explicit casts even though they're redundant, but my understanding of what idiomatic C looks like involves just letting the language cast void* for you in basically every situation.
@KaustavMajumder
7 ай бұрын
Python enters the chat. "Memory what?" Python leaves the chat. 😁 Love your videos. Keep up the awesome and inspiring work. I'm digging deep into C++. It's pretty interesting.
@legion_prex3650
7 ай бұрын
Basic knowledge of memory management should have even a mediocre python developer. but i have seen things.... omg. My assembly times are like 40 years ago but im am still coding in C sometimes. It's fun! But do a lot of python as well nowadays, it's just super convenient and easy. Anyway, you have to know what's going on under the hood. C++ is fun as well, have a nice time!
@yarpen26
5 ай бұрын
Doing only casual programming at best (and you could barely even call it that much most of the time), I'm somehow drawn to the concept of memory allocation. It just feels wrong for something this crucial to be taken care of by an interpretative layer instead of myself. To be fair, I only semi-understand the pointer stuff based on theory alone, that's why I want to try the real thing. That's the only way to learn, as practice proves.
@w花b
5 ай бұрын
@@legion_prex3650 I love coding in C but if we're being honest, I'm not doing anything substantial with it unless there's a big abstraction layer like Raylib which actually makes programming in C enjoyable and actually feels like you're moving fast.
@thewelder3538
4 ай бұрын
What you actually meant was... Python enters the chat. "Memory what?" Three days later, Python leaves the chat after everyone has died of old age. 😁
@HoSza1
6 ай бұрын
There is a catch though, you are comparing bananas and oranges to apples. What if I told you, mmap is available to all 3 languages? (And I do not mean inline assembly here.) C/C++ is called a systems programming language for a good reason.
@redcrafterlppa303
6 ай бұрын
2:20 don't use new and delete in c++ use unique_ptr or shared_ptr if necessary.
@martijn3151
7 ай бұрын
Just as a best practice tip: always set your pointers to null after dealloc/free.
@sheesh7872
7 ай бұрын
@iro4201null like 0 /s
@marksmod
7 ай бұрын
and don't forget: the more stars you use, the better.
@sheesh7872
7 ай бұрын
@@marksmodwheres my very valuable definitly seriös programming comment😢
@mitigamespro8757
4 ай бұрын
In actual practice, you use asan and ubsan to check for these errors. (And thus no need for these tips like setting it to null after freeing memory)
@turdwarbler
6 ай бұрын
malloc and free ARE NOT key words at all, they are function calls in the standard C library.
@fntr
5 ай бұрын
ok and?
@ShuAbLe
3 ай бұрын
I think the meaning of key words here is in the sense that these are the words you have to remember to do the job. Not as defining what they are...
@turdwarbler
3 ай бұрын
@@ShuAbLe Learning a new programming language is difficult and use of the correct terms is very important otherwise as you go away and google questions you get confused when people refer to malloc as a keyword and other people refer to it as a function call. Which is right ?. If you are going to go online and attempt to teach people things, then you need to get the basics correct. language keywords and library function calls are two completely different things.
@jessedevore
6 ай бұрын
Current C++ core guidelines actually recommend against directly using new and delete in favor of smart pointers. std::make_unique and std::make_shared are the way to go. I also get that it's important to understand new and delete. Hats off to you for doing memory management in assembly!
@75yado
6 ай бұрын
good luck with making equivalent calls in c and asm
@tripplefives1402
6 ай бұрын
@@75yado smart ptrs use new and delete under the covers.
@75yado
6 ай бұрын
@@tripplefives1402 I know and a little bit extra to ensure smartness and security and doing that little bit extra in asm or C would prolong the video to several hours
@Denis-in6ur
6 ай бұрын
I hear that a lot. Please, don't let these guidelines take over thinking. Smart pointers have their advantages over the default pointers - but they always come with costs. They aren't a fit for every system and every program that gets written. Smart pointers have their flaws and its important to know the difference and when to use them. There is no "right pointer". That is a made up concept. Smart pointers are an abstraction layer and as always, the developer has to decide what fits best.
@tripplefives1402
6 ай бұрын
@@75yado It's just a container with a pointer in it that has a reference counter that behaves like a garbage collector so you can't use after free. You could probably do that in 5 minutes. It's even implemented in vanilla C++ code so you could just look at the header files and see how it actually works. It's not some super hidden thing in the compiler or anything.
@chutipascal
7 ай бұрын
I like that you use the universal answer to everything for the content of the memory.
@NnO0Worries
6 ай бұрын
you 're at 42 likes so I'm just gonna add a thumbs up remark 🙂
@YawnGod
3 ай бұрын
@@NnO0Worries It's at 69 likes right now so I must stop the dirty thinking!
@wiebel7569
7 ай бұрын
Wow, this was the most compact in depth video I have every seen, amazing. Thank you. What I don't get is why are you reassigning #-1 to r0 in alloc_failed, isn't it already #-1 in the first place?
@fios4528
6 ай бұрын
I really hope this channel takes off. You put a ton of effort into your content!
@pedrobotsaris2036
7 ай бұрын
You can call mmap in both c and c++. You don’t need to write assembly for that.
@christopheroliver148
6 ай бұрын
Yup. Good for fun tricks like circular buffers where base-index addressing works even off the far end of the buffer. (I.e. map it again at the consecutive address)
@julianocardarelli5106
6 ай бұрын
Perfect. Nowadays people do not have any idea about low level. Congratulations for bringing up your knowledge.
@InternetArbiter
6 ай бұрын
the computer is not a substitution for living in real life. Don't forget that in all your typing.
@julianocardarelli5106
6 ай бұрын
@@InternetArbiter , consider that when talking with hardware engeneer or someone who is responsible for a tool like a framework or a virtual machine used by millions of other softwares. Consider that for the set of systems that control the airplane you will travel. Consider that when the can network of your car is running using a microcontroller that has no space to use objet orientation...
@ScottHess
6 ай бұрын
I still remember when it was reasonable to ask candidates to design a malloc library as an interview question. Sigh.
@InternetArbiter
6 ай бұрын
Guess what, champ. We don't need software like the piles of money investors throw at your inflated salary suggests. Your profession is swiftly coming to a breaking point and you might not even know it if you aren't from the US. Consider that you are following someone else's footsteps, no matter how deep the rat race maze goes for you. Did you find the cheese yet?@@julianocardarelli5106
@julianocardarelli5106
6 ай бұрын
@@ScottHess , I also remember that. Actually, nowadays it doesn't make any sense in a interview. I agree with that. But it still makes sense for engeneers only, not for 80% of web application developers and mobile developers. Hardware engeneers, developers/engeneers working with embedded software for example, they need to apply those concepts on the video.
@0xReip
7 ай бұрын
This channel was one of my best discoveries
@youreale
7 ай бұрын
It was fun to watch this video while the White House Office of the National Cyber Director (ONCD) was just issuing a comprehensive report recommending everyone get rid of C, C++, and Assembly in programming, due to safety concerns.
@bobanmilisavljevic7857
7 ай бұрын
Maybe they are doing some reverse psychology to get the C people fired up to write some code
@RacerS2
7 ай бұрын
comment i was looking for
@PedroFernandoMarquezSoto
7 ай бұрын
Which is a bigger reason to know how these things work, so you can fully understand what the risks can be
@LadyTink
6 ай бұрын
Love the lain vibes Absoluetly a treasure of a show. Also, love the walk through thank you for making this walk through
@nsawatchlistbait289
6 ай бұрын
Where'd you learn all this?
@basedfacistman
5 ай бұрын
memory allocation is like the most basic thing you'd learn when you start learning any manual memory management language, pick up a book, id suggest K&R for C, it also has a simple malloc implementation by ken thompson in the last chapter, with that you should learn everything you need to
@nsawatchlistbait289
5 ай бұрын
@@basedfacistman oh
@bdfb-th5ek
7 ай бұрын
Great series! I wanted to learn ARM assembly in my spare time and your videos are bite-sized and friendly to newbies
@CallousCoder
7 ай бұрын
I also have a set of 6 videos on ARM64 ending with actually doing GPIO on the Pi4.
@mitigamespro8757
4 ай бұрын
@@CallousCoder Cool, I might check it out soon!
@Lampe2020
3 ай бұрын
1:01 Okay, I don't know id that's my screen's fault, but that dark blue text is basically invisible on the black background. But maybe my non-glaring screen brightness coupled with night colours is the culprit here.
Пікірлер: 656