焦虑抑郁症吃什么药| 一吃就吐是什么病症| 子宫粘连有什么症状| 梦到和别人打架是什么意思| 鸡精和味精有什么区别| 普惠性幼儿园是什么意思| 法国公鸡是什么牌子| 凉粉用什么做的| 大校相当于政府什么官| 神农架为什么是禁区| 生孩子前要注意什么| 景五行属性是什么| 眼睛红血丝多是什么原因| 以什么见什么| 鳞状上皮增生是什么病| 狐臭挂什么科室的号| 玉屏风颗粒主治什么| 女人为什么会患得患失| 便秘吃什么| 怀孕分泌物是什么样的| 什么什么有力| 六点半是什么时辰| 基友什么意思| 驿马星是什么意思| 去医院测血糖挂什么科| 动物的尾巴有什么作用| 顺利是什么意思| 哺乳期吃什么水果好| 空调多少匹是什么意思| 狮子座是什么象| 蚕豆病不能吃什么药| 金刚石是由什么构成的| 鼻炎看什么科| us是什么单位| 大同有什么好玩的地方| 香水edp什么意思| ooxx是什么意思| 韩信属什么生肖| 按摩有什么好处和坏处| 什么茶解暑| 外阴炎用什么药| 起诉离婚需要什么材料| 烟草是什么植物| 尿频是什么原因导致的| 天女散花是什么意思| 经常早上肚子疼是什么原因| 1846什么意思| 防中暑喝什么水| 什么相争| 吐舌头是什么意思| 流感为什么晚上会比白天严重| 五心烦热失眠手脚心发热吃什么药| 虎属什么五行| 事后紧急避孕药什么时候吃有效| 家里来狗是什么征兆| molly英文名什么意思| 甲亢吃什么好| 9月28日什么星座| josiny是什么牌子| 95年的属什么生肖| 经期有血块是什么原因| 尿毒症是什么原因导致的| 雨霖铃是什么意思| 子宫肌瘤术后吃什么好| 2月是什么星座的| 女人手心脚心发热是什么原因| 查甲功是什么意思| 耳朵热是什么原因| 睡不着觉吃什么药| 贞操锁是什么| 什么思而行| 考c1驾照需要什么条件| 过敏性鼻炎吃什么药能快速缓解| 什么生肖不认识路| 慢慢张开你的眼睛是什么歌的歌词| 腐女是什么意思| 吃饱就犯困是什么原因| 金银花什么时候采摘最好| 1975年是什么命| 女朋友生日送什么| 一五行属性是什么| 样板间是什么意思| 黄瓜与什么食物相克| 鲁迅原名什么| 118代表什么意思| 收获颇丰什么意思| 宫颈病变是什么原因引起的| 为什么医生都穿洞洞鞋| 金银花有什么功效| 肝胃不和吃什么药| 月经量少吃什么调理| 肛门胀痛什么原因| 胸部疼挂什么科| 梅毒病有什么症状| 左下腹疼痛是什么原因女性| 怎么知道自己是什么血型| 婆婆是什么意思| 95年属什么生肖婚配表| 宫腔镜手术是什么原因才要做| 产前筛查是检查什么| 淋巴净排是什么服务| 梓是什么意思| 牙冠是什么| 什么是农历| 房性早搏吃什么药最好| 丙氨酸氨基转移酶高是什么原因| 严重失眠吃什么药最好| 长方脸适合什么样的发型| 烤鸭为什么那么便宜| 9月10日是什么日子| 鬼最怕什么颜色| 做梦遗精是什么原因| 鼻窦粘膜增厚什么意思| 什么的假山| 牵牛花像什么| 舌苔厚黄是怎么回事吃什么药| 爆血管是什么原因引起的| 坤字五行属什么| 2007年五行属什么| 清明有什么习俗| 没有痔疮大便出血是什么原因| 胸部正位片检查什么| m0是什么意思| 说话不清楚是什么原因导致的| 麻蛇是什么蛇| 马革裹尸是什么意思| 迪丽热巴颜值什么水平| 麻叶是什么植物| 抽水是什么意思| 三尖瓣少量反流是什么意思| 知柏地黄丸主治什么| 姓姜的男孩起什么名字好| 米线用什么做的| 偏官是什么意思| 肛瘘是什么原因造成的| 胃幽门螺旋杆菌吃什么药效果好| 学习机什么牌子好| 小麦是什么粮食| 自述是什么意思| 正月是什么意思| tf口红是什么牌子| 三羊念什么字| 拘谨是什么意思| 腺苷钴胺片治什么病| 眼睛痒吃什么药| 脱敏什么意思| mary是什么意思| 单核细胞高是什么原因| 柔是什么意思| 蒸桑拿是什么意思| 夫妻分床睡意味着什么| 肾病可以吃什么水果| 区武装部部长是什么级别| 呵护是什么意思| 梦到好多蛇是什么意思| 水球是什么| 十二月四号是什么星座| 日本人为什么长寿| 十月二十七是什么星座| 藿香正气水有什么用| 阴部痒痒的是什么原因| 眉骨疼是什么原因| 皮下出血是什么原因| 颈椎病用什么枕头好| 鼻尖长痘是什么原因| 俄罗斯乌克兰为什么打仗| 阿莫西林主要治疗什么| 吃什么药可以流产不用去医院| 宽粉是什么做的| 12月23日是什么星座| 粘鞋子用什么胶水最好| 幽门螺旋杆菌的症状是什么| 倒挂金钩什么意思| 流产后吃什么水果好| 甲功能5项检查是查的什么| 牙齿上白色斑块是什么| 苏联是什么国家| acc是什么意思| 三尖瓣反流什么意思| ood是什么意思| 老打瞌睡犯困是什么原因| 胎囊是什么| 消融手术是什么意思| 胸腔积液挂什么科| 直接胆红素是什么| 酸梅汤不能和什么一起吃| b类火灾是指什么| 不惑是什么意思| 杏有什么作用和功效| 探病是什么意思| 手抖是什么病的预兆| 什么叫袖珍人| 乳腺病人吃什么好| 手痛挂什么科| 扑热息痛又叫什么| 宫颈糜烂用什么药| 甲状腺结节低回声什么意思| 胃疼恶心吃什么药效果好| 从容面对是什么意思| 心脏无力吃什么药最好| 血压计什么牌子好| 来加贝念什么| 自言自语说话是什么病| 菠萝与凤梨有什么区别| 宁字五行属什么的| 217是什么意思| 肺结核吃什么药| 庚午日五行属什么| 倒钩是什么意思| 参保是什么意思| 胆固醇高是什么原因引起的| 爆肝是什么意思| 下午1点是什么时辰| 吃什么能解决便秘| 凤凰男是什么意思| mrcp是什么检查| 中央处理器由什么组成| 六月八号是什么星座| 弯男是什么意思| 双鱼座和什么座最配| 喝葡萄糖有什么功效与作用| 葫芦五行属什么| 喉咙里老是有痰是什么原因| 古埃及是什么人种| 肺炎吃什么药| 橙字五行属什么| pta是什么意思| 过劳肥是什么意思| 喝什么茶能降血压| 4月23日是什么星座| 6.25是什么日子| 睡觉咬牙齿是什么原因引起的| 鹅翅膀下垂是什么原因| 令香是什么意思| 阴囊潮湿吃什么药| 坐飞机需要带什么证件| 化疗期间吃什么食物好| 走路快的人是什么性格| hcg是什么激素| 正厅级是什么级别| 紧锣密鼓是什么意思| 明朝为什么会灭亡| 七月份适合种什么菜| 一黑一白是什么蛇| 褒义是什么意思| 乖乖是什么意思| 月经不正常去医院检查什么项目| 样本是什么意思| 做蛋糕用什么油| 女生两个月没来月经是什么原因| 日本人为什么长寿| 立加羽读什么| 右眼老跳是什么原因| 吃什么促进恶露排干净| 吃完紧急避孕药不能吃什么| 柳丁是什么| 儿童口腔溃疡用什么药| 肚子肥胖是什么原因引起的| 生物工程是什么专业| 孕妇胃疼可以吃什么药| 喉咙痛不能吃什么| 大便羊屎粒是什么原因| 内伤湿滞什么意思| 早上起床胃疼是什么原因| 百度Siirry sis?lt??n

用车你还在单手开车吗?你是真的不想活了吗?

Wikipediasta
T?m? artikkeli k?sittelee tietokoneohjelmointia. Katso Assembly sanan muista merkityksist?.
Motorola 6800 8-bittisen suorittimen assembly-kielell? kirjoitetun koodin k??nn?slistausta.
百度 华杯赛决赛的突然暂停,被业界认为是一种信号。

Assembly (usein virheellisesti assembler) on tietokoneen ohjelmointikieli, joka koostuu symbolisesta vastineesta tietylle konekielelle.[1] Toinen nimitys assembly-kielelle on symbolinen konekieli.[2] Eri suoritintyyppej? k?ytt?ville tietokoneille tarvitaan eri assembly-kieli.[1]

Assembly on matalan tason kieli, jota sanotaan my?s toisen sukupolven ohjelmointikieleksi.[3] Kieli on isomorfinen ja vastaa l?heisesti konekielt?: kielen ominaisuudet ovat yksi-yhteen tai yksi-moneen suhteessa k?skykannan ominaisuuksiin.[3] Ylemm?n tason kielet k?ytt?v?t ei-isomorfista muunnosta.[3]

Konekieli on suorittimen tai vastaavan laitteen ymm?rt?m? kieli. Konekielen k?skyt ovat lukujonoja, ja siksi vaikeita muistaa sek? hahmottaa koodia kirjoitettaessa. Siksi konekielen kirjoittamisen sijaan k?ytet??n yleens? assembly?. Assembly-ohjelma muutetaan konekieliseksi assembler-k??nt?j?ll?.

Assembly-ohjelma koostuu k?skyist? (engl. mnemonics) ja niihin liittyv?t operandeista, jotka vastaavat konekielen k?skyj?. Lis?ksi assembly-kielisess? ohjelmassa on muistiosoitteiden nimi? ja muita apusanoja.

Assemblyn k?yt?n varjopuolia verrattuna C:n tyyppisiin korkean tason kieliin ovat muun muassa ohjelmoinnin vaikeus, hitaus ja virhealttius. Assemblyn k?ytt? vaatii taitoa ja erityist? tarkkuutta.

Assembly-kieli on huonosti siirrett?v? kieli eri suorittimien v?lill?. Eri suoritintyypeille on erilaiset assembly-ohjelmat.

Small-Scale Experimental Machine (SSEM) oli ensimm?inen tallennetun ohjelman tietokone, jossa ohjelma voitiin tallettaa tietokoneen muistiin ja ohjelma voitiin ladata ilman fyysisi? muutoksia laitteeseen.[4][5] Konekieli oli koneelle tehokasta k?sitell?, mutta ei ihmisille: aluksi t?m? ei ollut ongelma koska ohjelmoijat olivat samoja henkil?it? jotka suunnittelivat koneen mutta uusien ohjelmoijien tarpeen kasvaessa laitteiston yksityiskohtien kuvaileminen tuli ongelmaksi.[6] Lis??m?ll? muistis??nt?j? (engl. mnemonics) ohjelmoijan ty?t? helpotettiin.[6] Muistis??nt?jen muuttaminen konekielisiin oli alkuun k?sity?t? ennen assembler-ohjelman kehitt?mist?.[6] Varhaisen assembly-kielen kehitti Kathleen Booth Automatic Relay Calculatorille.[7] Termin assembler yleistymiseen liitet??n Wilkesin, Wheelerin ja Gillin kirja The preparation of programs for a digital computer (1951).[6] Ennen vuotta 1954 l?hes kaikki ohjelmointi tehtiin matalan tason ohjelmointikielill? kuten konekielell? tai assemblyll?.[8]

Assembly, symbolinen konekieli

[muokkaa | muokkaa wikiteksti?]
Apple II:n konekielt? ja assembleria. Ensimm?inen sarake: muistiosoitteita. Seuraava sarakeryhm?: konekielt? heksadesimaalina. Viimeiset kaksi saraketta: Assembly-kielt?. 3. sarake: k?sky, 4. sarake: operandit.

Assembly on ohjelmointikielten alaluokka ja tarkoittaa symbolisia konekieli?. Tietokoneiden ymm?rt?m?t konekielet koostuvat yleens? bin??rimuotoisista k?skyist?, jotka voidaan esitt?? esimerkiksi 1- ja 0-merkkien sarjoina.

Er?s Intelin 8086 suorittimen konekielen k?sky siirt?? luvun 97 rekisteriin AL:

 10110000 01100001

Monesti t?m? esitet??n heksadesimaalilukuna lyhyemm?n esitysmuodon vuoksi:

 B0 61

Assemblyll? k?sky n?ytt?? viel? selke?mm?lt?:

MOV AL, 61h       ; Kommentti: Siirr? AL-rekisteriin luku 97 , mik? on heksadesimaalilukuna 61 h (61 hex)

Esimerkiss? "MOV" on k?sky ja 61h operandi. Kyseist? syntaksia k?ytet??n esimerkiksi MASM:issa, jossa operandit ovat j?rjestyksess? kohde, l?hde eli "al, 61h"

GNU Assemblerissa (GAS) k?ytetyll? AT&T:n syntaksilla operandit ovat j?rjestyksess? l?hde, kohde.[9]

 movb    $0x61, %al

Symbolinen konekieli on konekielen havainnollisempi ja ihmisl?heisempi esitysmuoto, joka m??rittelee konekielen k?skyille kirjoitetun kielen kaltaisen ulkoasun. Assembly-kieless? on siten l?hes sama rakenne ja komennot kuin varsinaisessa konekieless?, mutta tekstimuotoisuus helpottaa ohjelman kirjoittamista ja ymm?rt?mist?. Lis?ksi eri muistiosoitteisiin viitataan assemblyssa usein nimin ja itse muistiosoite voidaan antaa assemblerin m??ritelt?v?ksi. Konekieli ja siis my?s assembly ovat sidonnaisia tiettyyn suoritinperheeseen.

Assembly-kielinen ohjelma muutetaan konekielelle assembleriksi nimetyll? k??nt?j?ll?. Samaa laiteymp?rist?? varten voi olla useita eri syntakseja riippuen k?ytetyst? assembler-ohjelmasta (esimerkiksi MASM, GAS). Muilla suorittimilla on omat eronsa ja ohjelmansa.

Esimerkiksi 32-bittisen kokonaisluvun, jonka arvo on "5" siirt?minen datarekisteriin d0 Motorola 68000 -sarjan suorittimella:

 move.l    #5, d0

Inline-assembly

[muokkaa | muokkaa wikiteksti?]

Assembleria on k?ytetty monesti korkean tason kielten ohella nopeuttamaan ohjelman ajoa joissain kohdissa.

Korkean tason kielen k??nt?j?t, esimerkiksi GCC, osaavat k??nt?? ns. inline-assembly?, joka on korkeamman tason kielen joukossa olevia assembly-k?skyj?.[10]

Esimerkki C-kielen joukossa asm-lausekkeella:[11]

int src = 1;
int dst;   

asm ("mov %1, %0\n\t"
    "add $1, %0"
    : "=r" (dst) 
    : "r" (src));

printf("%d\n", dst);

Eri k??nt?jien tuki inline-assemblylle vaihtelee mutta muun muassa LLVM/Clang on pitk?lti yhteensopiva GCC:n kanssa.[12]

Assemblyn k?ytt?kohteet

[muokkaa | muokkaa wikiteksti?]

Assembly antaa ohjelmoijalle t?yden m??r?ysvallan suorittimelle sy?tett?v?n komentosarjan suhteen, ja siksi sit? k?ytt?m?ll? voidaan hy?dynt?? tietokoneen resurssit tehokkaasti. Assembly? k?ytettiin kotimikrojen alkuaikoina melko yleisesti. Esimerkiksi MS-DOS-k?ytt?j?rjestelm?, taulukkolaskentaohjelma Lotus 1-2-3 ja useimmat 16-bittisen sukupolven tietokoneiden pelit ohjelmoitiin assemblyll?. Varsinaisen assembly-kielen k?ytt? 8-bittisill? tietokoneilla (kuten Commodore 64, MSX, ZX Spectrum) on useimmiten liian raskasta. Sen sijaan joko k?ytettiin konekielimonitoreja tai hy?dynnettiin ristiink??nt?mist? kirjoittamalla assembly? ensin PC:ll? tai UNIX-ty?asemalla ja ristiink??nt?m?ll? se lopulliselle kohteelleen.

Puhtaan assembly-kielen k?ytt?? on perinteisesti puoltanut ohjelmakoodin tiiviys verrattuna k??nt?jien tuottamaan konekieleen. Etenkin varhaisten tietokoneiden muistit ovat olleet verrattain pieni? ja asettaneet tiukan rajan suoritettavan ohjelman koolle. Assembly-kielell? toteutettuun ohjelmaan voitiin koodata vain sovelluksen tarvitsemat toiminnot, kun taas esimerkiksi FORTRAN- tai ALGOL-kielell? toteutetut ohjelmat toivat aina mukanaan ylim??r?ist? koodia; tyypillisesti suoraan assemblyll? toteutettu ohjelma oli kooltaan vain 1/10 korkean tason kielell? tuotetusta ohjelmasta. Kokoedun takia esimerkiksi kiintolevyn alussa oleva k?ynnistyskoodi kirjoitetaan nyky??nkin assemblyll?.

Sovellusohjelmien osalta t?llainen optimointi ei kuitenkaan yleens? en?? ole mielek?st?, eik? assembly? juurikaan k?ytet? nykyaikaisten henkil?kohtaisten tietokoneiden kaltaisten koneiden eik? my?sk??n ?lypuhelimien sovellusohjelmoinnissa. Sovellusohjelmat ovat niin isoja, ettei niit? voi mielekk??sti hallita assembly-tasolla. Suorittimet ovat my?s niin tehokkaita, ett? koodin nopeutuksella saatava hy?ty ei yleens? ole vaivan arvoista. Pullonkaulat ovat yleens? muualla, kuten I/O-operaatioiden ja sivutuksen aiheuttamassa viiveess?. Korkean tason ohjelmointikielten k??nt?j?t ovat my?s kehittyneet, ja samalla suorittimet sis?iselt? toiminnaltaan monimutkaistuneet niin, ett? k??nt?j? tuottaa useimmiten tehokkaampaa koodia kuin mit? k?sin ohjelmoimalla voisi saada aikaan, varsinkaan kohtuullisella ty?m??r?ll?. Lis?ksi esimerkiksi tehokkaiden algoritmien ja tietorakenteiden valinta saattaa suurempia kokonaisuuksia assemblyll? koodattaessa j??d? pahasti taka-alalle, koska niiden toteuttaminen voi olla konekielell? liian ty?l?st?.

Sulautettujen j?rjestelmien ohjelmoinnissa on assemblyll? jonkin verran vahvempi asema kuin ohjelmoinnissa henkil?kohtaisille tietokoneille. Kokonaisia ohjelmia ei silti n?illek??n j?rjestelmille ole mielek?st? ohjelmoida pelk?ll? assemblyll?.

Erityistilanteissa assemblyll? on kuitenkin viel? t?rke? asema. Sit? voi tarvita laitteistol?heist? ohjelmointia vaativissa teht?viss?, kuten laiteohjainten kehityksess?. Viel? toisinaan assemblyll? on k?ytt?? my?s tehokkuutta vaativissa sovelluksissa, kuten salauksessa tai videon koodauksessa, kun ohjelman osia optimoidaan. N?iss?kin tapauksissa assemblyll? koodataan mahdollisimman pieni osa. K??nt?j?n tuottamaa assembly-koodia analysoimalla voidaan l?yt?? keinoja korjata korkeamman tason koodia ja k??nt?j?lle annettavia ohjeita, kunnes tulos on haluttu. Koodin ymm?rt?minen assembly-tasolla on joskus t?rke?? my?s vianetsinn?ss?.

Assembly-esimerkkej?

[muokkaa | muokkaa wikiteksti?]

Tekstin tulostaminen MS-DOS -k?ytt?j?rjestelm?ll?

[muokkaa | muokkaa wikiteksti?]

Alla on esimerkki Assembly-kielisest? ohjelmasta Intelin x86-suvun arkkitehtuureille. Ohjelmakoodissa on k?ytetty Intelin x86-merkint?tapaa. Ohjelma on MS-DOS-k?ytt?j?rjestelm?ss? suoritettava COM-tyyppinen ohjelma.

1  org 100h
2  section .text
3
4         mov ah,9h
5         mov dx,offset teksti
6         int 21h
7         ret
8
9 teksti: db 'Hei maailma!$'

Ohjelma kutsuu MS-DOS -k?ytt?j?rjestelm?n j?rjestelm?kutsua, joka tulostaa annetussa muistiosoitteessa olevan tekstin "Hei maailma!". Rivien toiminta:

  • Rivi 1 m??rittelee ohjelman alkuosoitteen segmenttins? sis?ll?. Com-tyyppisiss? ohjelmissa alkuosoite on aina 100h.
  • Rivi 2 ilmoittaa k??nt?j?lle, mink? tyyppist? aineistoa t?ss? kappaleessa on.
  • Rivi 4: heksaluku 9 siirret??n rekisteriin AH.
  • Rivi 5: rekisteriin DX siirret??n muistipaikan teksti osoite.
  • Rivi 6: Tulostamiseen k?ytet??n PC:n DOS-k?ytt?j?rjestelmien ohjelmistokeskeytyst? 21h (h tarkoittaa heksalukua, luku on desimaalisena 33), jolle halutun toiminnon numero (9) annetaan rekisteriss? AH. Rekisteriss? DX on muistiosoite, josta haluttu $-merkkiin loppuva teksti alkaa datasegmentin ds sis?ll?.
  • Rivi 7: Rutiinin suorittamisen j?lkeen palataan p??ohjelmaan, mik? onnistuu com-tyyppisess? ohjelmassa pelk?ll? ret-k?skyll? . Muuntyyppisess? ohjelmassa voi olla tarpeen k?ytt?? ohjelmistokeskeytyksen 21h alaista toimintoa 4Ch.
  • Rivi 9: Tekstiin kuuluvat tavut on m??ritelty rivill? 9, joten ne alkavat heti ohjelmakoodin viimeisen tavun j?lkeen. Tekstin alkuosoitteelle on annettu nimi (osoite) teksti. Lopussa oleva dollarin merkki p??tt?? tulostuksen.

Yll? olevaa ohjelmaa vastaava ohjelma ylemm?n tason kielell?, t?ss? Pascal-ohjelma on

program Hello;
begin
  writeln( 'Hello World' );
end.

Fibonaccin lukujen laskeminen

[muokkaa | muokkaa wikiteksti?]

Seuraava esimerkki on Fibonaccin lukujen laskija Motorola 68000 -sarjan suorittimille. Lasketaan :s Fibonaccin luku antamalla rekisteriss? d0. Fibonaccin luku lasketaan silmukassa kaavalla: , ja ja .

 1  fibonacci:      cmp.l #1,d0
 2                  bgt.b overone
 3                  moveq #1,d0
 4                  rts
 5  overone:        moveq #1,d1
 6                  moveq #1,d2
 7                  moveq #1,d3
 8  loop:           move.l d2,d4
 9                  add.l  d3,d4
10                  move.l d3,d2
11                  move.l d4,d3
12                  addq.l #1,d1
13                  cmp.l  d0,d1
14                  bne.b  loop
15                  move.l d4,d0
16                  rts

Riveill? 1-4 tarkistetaan, onko d0 1, ja jos se on, lopetetaan aliohjelma ja palautetaan tuloksena 1. Rivill? 5 asetetaan silmukkalaskuri rekisteriss? d1 arvoon 1. Riveill? 6 ja 7 asetetaan rekisterit d2 ja d3 arvoihin ja . Rivill? 8 alkaa silmukka. Rivit 8 ja 9 laskevat seuraavan Fibonaccin luvun rekisteriin d4 summaamalla kaksi edellist? lukua rekistereist? d2 ja d3. Riveill? 10 ja 11 tallennetaan muistiin 2 uusinta Fibonaccin lukua rekistereihin d2 ja d3 seuraavaa kierrosta varten. Rivill? 12 kasvatetaan silmukkalaskuria yhdell?. Riveill? 13 ja 14 vertaillaan silmukkalaskuria ja :??. Mik?li on saavutettu, lopetetaan silmukka. Muuten hyp?t??n takaisin riville 8. Rivill? 15 siirret??n tulos rekisterist? d4 rekisteriin d0, ja rivill? 16 poistutaan aliohjelmasta.

Esimerkit antavat hyv?n kuvan, miksi sovelluksia kehitt?ess? aikaa kuluu eritt?in kauan ja ty?skentely puhtaalla assemblyll? on hankalaa. Korkeamman tason ohjelmointikielet on luotu helpottamaan t?t? ty?t?, ja k??nt?ji? k?ytet??n muuntamaan selke?mpi kieli konekielimuotoon. Konekielet ovat kuitenkin yleens? hyvin suoraviivaisia, ja k?skyjen suorittamat toiminnot ovat yksinkertaisia. T?m?n vuoksi assembly-ohjelmointi on helppo opetella.

  1. a b Assembly language britannica.com. Viitattu 12.9.2020. (englanniksi)
  2. www.computerhope.com computerhope.com. Viitattu 26.7.2017. (englanniksi)
  3. a b c Roger Clarke: A Contingency Approach to the Application Software Generations rogerclarke.com. 1991. Viitattu 4.2.2020. (englanniksi)
  4. The Manchester Small Scale Experimental Machine -- "The Baby" curation.cs.manchester.ac.uk. Arkistoitu 11.3.2016. Viitattu 25.8.2017.
  5. Guy Fedorkow: About the Computer History Museum’s IBM 1401 Machines computerhistory.org. 19.2.2015. Viitattu 28.1.2020. (englanniksi)
  6. a b c d Harry Fairhead: History of Computer Languages - The Classical Decade, 1950s i-programmer.info. Viitattu 13.9.2020. (englanniksi)
  7. Liam Proven: RIP: Kathleen Booth, the inventor of assembly language theregister.com. 29.10.2022. Viitattu 30.10.2022. (englanniksi)
  8. John Backus: FORTRAN Session (PDF) Computer History Musem. Viitattu 10.2.2020. (englanniksi)
  9. Linux assemblers: A comparison of GAS and NASM IBM. Viitattu 8.10.2017.
  10. 6.47 How to Use Inline Assembly Language in C Code gcc.gnu.org. Viitattu 12.9.2020. (englanniksi)
  11. 6.47.2 Extended Asm - Assembler Instructions with C Expression Operands gcc.gnu.org. Viitattu 12.9.2020. (englanniksi)
  12. Inline assembly clang.llvm.org. Viitattu 12.9.2020. (englanniksi)

Aiheesta muualla

[muokkaa | muokkaa wikiteksti?]

Kirjallisuutta

[muokkaa | muokkaa wikiteksti?]
  • Link, Wolfgang: Assembler-ohjelmointi. Suomentanut Reijo Lundahl. Vantaa: Pagina, 1997. ISBN 951-644-108-4 Finna:helka.9910346093506253
  • Maljugin, Vitaly; Izrailevich, Jacov; Lavin, Semyon; Sopin, Aleksandr: Inside assembler: ohjelmoijan k?sikirja. (Toimituksellinen neuvonantaja: Ivor Horton. Suomennetun laitoksen oikolukenut T. Eklin) Helsinki: IT Press, 1999. ISBN 951-826-006-0 Finna:helmet.1039076
农历6月20日是什么星座 足字旁的字有什么 甲状腺是由什么引起的 瞬息万变什么意思 气管炎不能吃什么食物
肝脏在什么位置 子宫腺肌症是什么原因引起的 间歇性跛行见于什么病 为什么不能指彩虹 吃螃蟹不能吃什么
王维是什么派诗人 与什么俱什么 什么的鼻子填词形容词 卤蛋吃多了有什么危害 皮革是什么材质
发烧去医院挂什么科 异丙醇是什么 晚上吃什么不发胖 更年期是什么意思 肌肉萎缩有什么症状
世界上最多笔画的字是什么字hcv8jop9ns2r.cn 71年属猪是什么命hcv8jop0ns9r.cn 什么水果止咳hcv9jop3ns3r.cn 金匮肾气丸治什么病hcv8jop9ns2r.cn lotus是什么牌子cl108k.com
暴毙是什么意思hcv8jop3ns3r.cn 鸡茸是什么东西hcv9jop5ns1r.cn 越南用什么语言hcv8jop9ns1r.cn 心度高血压是什么意思hcv9jop7ns2r.cn 男人气血不足吃什么药hcv7jop4ns6r.cn
婆家是什么意思hcv7jop7ns0r.cn 性激素检查是查什么hcv9jop6ns0r.cn 场所是什么意思hcv8jop0ns6r.cn 吃什么降胆固醇hcv7jop5ns0r.cn 体检前需要注意什么hcv7jop5ns6r.cn
为什么地球是圆的hcv8jop5ns8r.cn 白咖啡是什么hcv7jop9ns3r.cn 二十岁是什么之年sscsqa.com 红枣为什么要去核煮youbangsi.com 手汗多是什么原因hcv7jop6ns0r.cn
百度