Hermot vievä tehtävä

Mielipuoli koodaaja

Tässä kasa kysymyksiä jotka ovat aiheuttaneet huolta ja murhetta ja turhaa kirousten tulvaa jo tunnin ajan... Koskevat siis perus C-kieltä... olen merkinnyt ne kohdat X:llä jotka uskon oikeiksi... mitä mieltä olette te?

X 1.The memory consists of bits. Four bits form a nibble, 8 bits a byte, 16 bits form a word.

X 2.In the simplified model, computer reads one instruction at a time and then executes it. After the instruction is executed, the computer reads the next instruction.

3.Code and data are located in different memories

X 4.Code and data are located in the same memory

5.The computer has a will of its own, and it wants me to suffer.

X 6.The computer memory consists of 1's and 0's that are called bits

X 7.A program in memory is represented by machine-language instructions. All C commands have an equivalent machine-language instruction

8.In the simplified model, the computer processor can do many things at the same time

9.Little gnomes inside the computer make the computer work!

X 10.A program in memory is represented by machine-language instructions. The C compiler compiles each C command into a number of machine-language instructions that perform the action determined by the C command.

11.The memory consists of bits. 16 bits form a byte, 8 bits form a word.

12.In the simplified model, the computer processor cannot do many things at the same time, but it or the operating system can change between tasks to give an impression that it does many things at the same time

13.Writing in memory is an Always-Safe-operation that cannot write over other data or code

X 14.A programming error can cause unrelated important data or code to be overwritten when writing in memory

6

781

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • ERNESTI 98

      1. riippuu kääntäjästä, arkkitehtuurista, sovituista "säännöistä", false

      2. mikä ihmeen yksinkertaistettu malli? kykeneekö tietokone moniprosessointiin? minkä seuraavan käskyn? Saman prosessin sisältä vai seuraavalta prosessilta? false jos tukee mp:tä, false jos tarkoitetaan että käsky on samassa prosessissa (aikaviipale on voitu antaa toiselle)

      3. missä ihmeen eri muisteissa? mikä ihmeen koodi? monekielinen koodi? tietysti suoritettava koodi ja muuttujat jne ovat eri "muistiosoitteissa". muistiosoitteet voivat olla fyysisesti eri muisteissa. true

      4. kts. edellinen

      5. true eikä tarvitse edes perustella

      6. true

      7. true

      8. mikä tämä yksinkertaistettu malli luulee olevansa?

      9. gnome on mainio työpöytäympäristö linuxille mutta ei se sentään koko tietokonetta pyöritä

      10. true

      11. sana voi olla vain 8 bittiä ja tavu voi olla jopa 12 bittiä. en ole törmännyt ikinä 16 bitin tavuun.

      12. jos oikein ymmärsin yksinkertaistetun mallin niin tämä on true. scheduler jakaa aikaviipaleita prosesseille joka saa vaikuttamaan että prosessit suoritetaan rinnakkain.

      13. "always" -> false, käyttöjärjestelmä huolehtii tästä: segmentation fault

      14. ohjelmointivirhe missä? käyttöjärjestelmässä? kääntäjässä? ajettavassa ohjelmassa? mihinkä liittymätön tärkeä data? onko data ohjelman omaa dataa vai ei?

      • ...

        1 - ilman tuota nelibittistä 'nibble'-termiä väittämä olisi ok.

        2 - simplified model on mitä ilmeisimmin yhden prosessorin järjestelmä

        7 - ei ole tosi väittämä. c-komennoille ei löydy niitä vastaavia assembly-komentoja. Kymppiväittämä on oikea versio.

        11 - byte: 8 bittiä, word 16 bittiä (eli väärin)


      • Ernesti 98
        ... kirjoitti:

        1 - ilman tuota nelibittistä 'nibble'-termiä väittämä olisi ok.

        2 - simplified model on mitä ilmeisimmin yhden prosessorin järjestelmä

        7 - ei ole tosi väittämä. c-komennoille ei löydy niitä vastaavia assembly-komentoja. Kymppiväittämä on oikea versio.

        11 - byte: 8 bittiä, word 16 bittiä (eli väärin)

        "1 - ilman tuota nelibittistä 'nibble'-termiä väittämä olisi ok. "
        Mihin perustat tämän? Tavu ja sana eivät ole vakiomittaisia jokaisessa arkkitehtuurissa. Nibble on puolet tavusta.

        "7 - ei ole tosi väittämä. c-komennoille ei löydy niitä vastaavia assembly-komentoja. Kymppiväittämä on oikea versio. "
        Ahaa, eli C-kielinen komento suoritetaan prosessorissa C-kielisenä? puhhuh...


      • ...
        Ernesti 98 kirjoitti:

        "1 - ilman tuota nelibittistä 'nibble'-termiä väittämä olisi ok. "
        Mihin perustat tämän? Tavu ja sana eivät ole vakiomittaisia jokaisessa arkkitehtuurissa. Nibble on puolet tavusta.

        "7 - ei ole tosi väittämä. c-komennoille ei löydy niitä vastaavia assembly-komentoja. Kymppiväittämä on oikea versio. "
        Ahaa, eli C-kielinen komento suoritetaan prosessorissa C-kielisenä? puhhuh...

        Nibble-termi ei ole tullut koskaan vastaan, näyttäisi olevan oikea. Vaikutti äkkisiltään hyvinkin keksityltä termiltä.

        "7 - ei ole tosi väittämä. c-komennoille ei löydy niitä vastaavia assembly-komentoja. Kymppiväittämä on oikea versio. "
        Ahaa, eli C-kielinen komento suoritetaan prosessorissa C-kielisenä? puhhuh...

        Et tainnut ymmärtää, väänetään siis rautalangasta : mikä on mielestäs esim. for -luuppia vastaava komento assemblyssä? while:ä vastaava? switch:iä? Ei tainnut löytyä montaakaan -> väittämä väärä

        Kymppikohta selvittää kyseisen asian oikein, 'The C compiler compiles each C command into a number of machine-language instructions that perform the action determined by the C command. '

        Mihin muuten itse perustat tuon väittämäsi '11. sana voi olla vain 8 bittiä'


    • joku

      Muuttaisin vastauksiasi seuraavasti:

      Kohdan 7 merkitsisin epätodeksi, sillä konekieli ja C eivät ole ekvivalentteja vaan yhtä C kielen käskyä vastaa useampi konekielen käsky.

      Kohdan 12 merkitsisin todeksi, eli prosessori voi prosessoida vain yhtä tehtävää kerrallaan. Käyttöjärjestelmä hoitaa varsinaisen moniajon, eli päättää siitä mitä tehtävää kulloinkin prosessoidaan ja kuinka kauan. (Vaikka tietokoneessa voi olla käynnissä useampi sovellus yhtä aikaa voi prosessori kuitenkin prosessoida vain yhtä kerrallaan).

    • Mika0800

      1. OK
      nibble=nybble = 4 bittiä
      byte=tavu=8 bittiä (*)
      word=sana=16 bittiä (*)

      (*) = pätee 100% PC -tietokoneista ja yli 99% muista tietokoneista. On tosiaan olemassa koneita, joissa tavu 8 bittiä ja/tai sana 16 bittiä, mutta nykyaikana äärimmäisen harvinaista. Kyseiset koneet eivät voi olla PC -yhteensopivia, eikä niillä ole juuri käytännön merkitystä.

      2. OK
      Yksinkertaistettu malli ilmeisesti tarkoittaa sitä, ettei tässä asioiden yksinkertaistamiseksi oteta huomioon nykyprosessorien tapaa suorittaa käskyjä spekulatiivisesti, välimuistittaa käskyjä ja niiden tuloksia jne. muitakin, prosessorin nopeuttamiseen tähtääviä ratkaisuja, vaan asiat käsitellään ekvivalenttisena yksinkertaisimmalle mahdolliselle ratkaisulle.

      3. PC-tietokoneissa väärin. Mutta on olemassa prosessoreita,joilla on erillinen data- ja ohjelmamuisti. PC:ssä ei varsinaisesti ole,mutta selectoreille voidaan määritellä luku/kirjoitus/suoritusoikeudet. Periaatteessa lukua ja suoritusta ei voitaisi erottaa mutta virtuaalimuistin hallintatoimenpiteillä tämäkin voidaan kättöjärjestelmän avulla saada aikaiseksi, se on eräänlainen illuusio - siitä toki maksetaan suorituskyvyn heikentymisenä.

      4. OK (ks. 3)

      5. väärin

      6. alkeistasolla OK, tosin muistiosoitteet osoittavat (PC-koneissa) tavuja.

      7. väärin (yksi C tai Pascal -käsky voi edellyttää useita asm -käskyjä, korkean tason rakenteet: while,for jne. -> myös käskyjen järjestys eroaa)

      8. väärin

      9. väärin (eikös gnome ole KDE:lle vaihtoehtoinen GUI-käyttöliittymä linuxiin ?)

      10. OK (vastaväittäjällä ilmeisesti heikko engl. taito ?)

      11. väärin

      12. OK (esim. windowsissa ja linuxissa on säikeitä ja prosesseja, mutta vaikkei MS-DOSissa tuollaisia olekaan, moni DOS -ohjelmakin silti keskeytysten avulla hoitaa esim sarjaportin tietoliikenteen tausta-ajona, joka tapahtuu näennäisesti yhtäaikaa varsinaisen ohjelman kanssa - tämäkin on sarjaporttikeskeytysten luoma illuusio)

      13. Väärin (olisi oikein, jos ohjelmoija olisi 100% täydellinen, eli ei koskaan tekisi sellaisia virheitä, jotka voivat johtaa muun datan/koodin ylikirjoittamiseen)

      14. oikein. Varsinkin C-kielessä varomaton osoitinmuuttujien kösittely ja/tai pituutta tarkistamattomat merkkijono-operaatiot ovat vaarallisia.

      C-koodaajille (tai heidän esimiehilleen) ei ilmeisesti kelpaa helpompi Delphin tapa käsitellä merkkijonoja, jossa merkkijonoilla on "oma äly" siinä mielessä, että esim lause:

      St1 := St2 St3;

      liittää merkkijonot St2 ja St3 peräkkäin yhteen (alkup. St2 ja St3 arvot *eivät muutu*) ja sijoittaa tuloksen merkkijonoon St1; tässä merkkijonon St1 uudelleenallokointi oikean pituiseksi ja mahd. vanhan St1:n muistisisällön vapautus tapahtuvat automaattisesti oikein, eli riskiä ylivuodosta vääriä muistiosoitteita ylikirjoittamaan ei em. Delphi -koodi aiheuta.

      em. Delphi -koodi toimii oikein, kun

      length(St1)

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Ja taas ammuttu kokkolassa

      Kokkolaisilta pitäisi kerätä pois kaikki ampumaset, keittiöveitset ja kaikki mikä vähänkään paukku ja on terävä.
      Kokkola
      30
      3511
    2. Kukka ampu taas Kokkolassa?

      T. olisi hetkeä aiemmin lähtenyt johonkin. Naapuri kai tekijä J.K., ei paljasjalkainen Kokkolalainen, vaan n. 100km pääs
      Kokkola
      9
      1568
    3. Kuinka kauan

      Olet ollut kaivattuusi ihastunut/rakastunut? Tajusitko tunteesi heti, vai syventyivätkö ne hitaasti?
      Ikävä
      113
      1473
    4. Milli-helenalla ongelmia

      Suomen virkavallan kanssa. Eipä ole ihme kun on etsintäkuullutettu jenkkilässäkin. Vähiin käy oleskelupaikat virottarell
      Kotimaiset julkkisjuorut
      224
      1265
    5. Kun näen sinut

      tulen iloiseksi. Tuskin uskallan katsoa sinua, herätät minussa niin paljon tunteita. En tunne sinua hyvin, mutta jotain
      Ikävä
      34
      893
    6. Purra saksii taas. Hän on mielipuuhassaan.

      Nyt hän leikkaa hyvinvointialueiltamme kymmeniä miljoonia. Sotea romutetaan tylysti. Terveydenhoitoamme kurjistetaan. ht
      Maailman menoa
      242
      893
    7. Yhdelle miehelle

      Mä kaipaan sua niin paljon. Miksi sä oot tommonen pösilö?
      Ikävä
      60
      869
    8. Helena Koivu on äiti

      Mitä hyötyä on Mikko Koivulla kohdella LASTENSA äitiä huonosti . Vie lapset tutuista ympyröistä pois . Lasten kodista.
      Kotimaiset julkkisjuorut
      130
      868
    9. Ja taas kerran hallinto-oikeus että pieleen meni

      Hallinto-oikeus kumosi kunnanhallituksen päätöksen vuokratalojen pääomituksesta. https://sysmad10.oncloudos.com/cgi/DREQ
      Sysmä
      66
      854
    10. Löydänköhän koskaan

      Sunlaista herkkää tunteellista joka jumaloi mua. Tuskin. Siksi harmittaa että asiat meni näin 🥲
      Ikävä
      98
      819
    Aihe