Faits: A. En 2007, X._ a vendu cinquante-deux boulettes de 0,8 g (brut) de cocaïne à divers toxicomanes. Le 17 décembre 2007, il a vendu 43,9 g (brut) de ce même produit à un policier en civil. Il a été arrêté. Au cours de son transport au poste, il s'est débattu, et il a tenté de donner des coups de tête au fonctionnaire qui s'efforçait de le maîtriser. La fouille de sécurité et la visite domiciliaire pratiquées peu après son arrestation ont révélé qu'il détenait encore à ce moment-là onze boulettes de 0,8 g (brut) de cocaïne, ainsi que 18,8 g (brut) de ce produit sous forme de gouttes. B. Par jugement du 15 avril 2008, le Tribunal de police du canton de Genève a condamné X._, pour infraction grave à la loi fédérale sur les stupéfiants (art. 19 ch. 1 et 2 LStup) et violence ou menace contre les autorités et les fonctionnaires (art. 285 CP), à vingt-quatre mois de privation de liberté, sous déduction de la détention préventive, et révoqué un sursis antérieur. X._ a appelé de ce jugement, en demandant notamment à être condamné pour infraction (simple) à la loi fédérale sur les stupéfiants. Par arrêt du 23 juin 2008, la Chambre pénale de la Cour de justice du canton de Genève a confirmé les déclarations de culpabilité des chefs d'infraction grave à la loi fédérale sur les stupéfiants et de violence ou menace contre les autorités et les fonctionnaires, réduit la peine à vingt mois de privation de liberté et confirmé la révocation du sursis antérieur. C. X._ recourt au Tribunal fédéral contre ce dernier arrêt, dont il conclut à la réforme en ce sens qu'il soit reconnu coupable d'infraction (simple) à la loi fédérale sur les stupéfiants et de violence ou menace contre les autorités et les fonctionnaires, sa peine étant réduite en conséquence à six mois de privation de liberté. À titre préalable, il demande l'assistance judiciaire. Le Tribunal fédéral n'a pas ordonné d'échange d'écritures.