5 ms·
ARM assembly code looks pretty nice. Mobile phones and Macs are using ARM, so there's lots of devices using it. Only Windows is using x86/x64.
by gardaani 5y ago
ARM assembly code looks pretty nice. Mobile phones and Macs are using ARM, so there's lots of devices using it. Only Windows is using x86/x64.
- ChuckNorris89 5y ago>Only Windows is using x86/x64 Yeah, X64 is only used by windows, that's like ~80% of the desktop computing market, plus nearly every server and cloud instance out there, so not much at all. /s Why do some users assume that the whole world revolves around Apple's iOS/M1 Mac ecosystem as if it exists in a vacuum?
- codebolt 5y agoCloser to 90%: https://netmarketshare.com/operating-system-market-share.aspx?options=%7B%22filter%22%3A%7B%22%24and%22%3A%5B%7B%22deviceType%22%3A%7B%22%24in%22%3A%5B%22Desktop%2Flaptop%22%5D%7D%7D%5D%7D%2C%22dateLabel%22%3A%22Trend%22%2C%22attributes%22%3A%22share%22%2C%22group%22%3A%22platform%22%2C%22sort%22%3A%7B%22share%22%3A-1%7D%2C%22id%22%3A%22platformsDesktop%22%2C%22dateInterval%22%3A%22Monthly%22%2C%22dateStart%22%3A%222019-11%22%2C%22dateEnd%22%3A%222020-10%22%2C%22segments%22%3A%22-1000%22%7D https://netmarketshare.com/operating-system-market-share.asp...
- ChuckNorris89 5y agoJesus, no wonder Microsoft can shove ads and do whatever they want with Windows.
- michaelcampbell 5y ago> Why do some users assume that the whole world revolves around Apple... Because for those users, it does, and Apple coddles and encourages that mindset.
- cmrdporcupine 5y agoBecause well over 90% of shipped computing devices are ARM based. Desktop computers are a declining and relatively small market. Your home, car and office are full of ARM devices. Potentially hundreds. x86 lives in the data centre (Linux, not Windows, so contrary to grandparent post, but whatever) and in some desktop systems. Not the majority of systems. Has nothing to do with an Apple fetish.
- edgyquant 5y ago> nearly every server and cloud instance out there Is this true? I thought Linux dominated the server space.
- cbm-vic-20 5y agoRISCV also has a nice assembly language.
- Joker_vD 5y agoOh, absolutely: LUI a0, 0x7FFFF ADDI a0, a0, 0xFFF is superior to MOV eax, 0x7FFFFFFF Except, of course, that RISC-V snippet doesn't actually load 0x7FFFFFFF into a0 because Reasons, it has to be LUI a0, 0x80000 ADDI a0, a0, 0xFFF "But the assembler has the LI pseudoinstruction so it will properly do this calculation for you!". Right, so much for "nice assembly language": you need an actual smart macroassembler to write it.
- zozbot234 5y agoTo be clear, that happens simply because ADDI sign-extends its immediate argument. This saves the need for separate immediate opcodes, and is reasonably consistent with the use of sign-extension elsewhere in the ISA.
- avianes 5y ago> "But the assembler has the LI pseudoinstruction so it will properly do this calculation for you!". Right, so much for "nice assembly language": you need an actual smart macroassembler to write it. In x86 the mnemonic "MOV" can be translated into instructions with a different opcode according to the addressing mode, immediate value size, or target register. Most of the x86 instructions have a similar issue, while RISC-V macroassembler are pretty simple. Therefore, the x86 assembler must actually contain much more intelligence than the RISC-V assembler to make it look "simple" and "nice".
- boondaburrah 5y agoTalkin' out of my ass here, but is this an artifact of the parameter having to fit in the same instruction word as the opcode ('cause RISC) and because the register is the size of a word (which is partially used by the opcode now), you can't actually load a whole register with an immediate in one go?
- bodhiandpysics1 5y agoARM assembly is easy to learn, because of its relatively small and orthogonal instruction set. However, load store architectures are annoying to program in, since you're constantly having to juggle memory. The lack of a convenient way to spill registers is also really really annoying! (you can only spill and load registers two at a time)